str.charAt(i)和c.charValue()区分(c是Character (对象))

虽然它们最终都指向一个"字符",但在 Java 程序开发中,它们的使用场景和对象来源完全不同。

1. str.charAt(i):用于"读取字符串"

  • 来源 :这是 String 类提供的方法。
  • 用途 :当你手中有一个 String 对象(字符串)时,你用它来获取字符串中指定索引位置的那个字符。
  • 返回类型 :直接返回基本类型 char。
  • 理解方式:就像在书架上寻找第 i 本书,直接把书抽出来。

2. c.charValue():用于"操作包装类对象"

  • 来源 :这是 Character 类(基本类型 char 的包装类)的方法。
  • 用途 :当你手中已经有一个 Character 对象时,通过调用这个方法,把这个对象"解包",取出它内部真正存储的那个基本类型 char。
  • 返回类型 :返回基本类型 char。
  • 理解方式:就像手里拿了一个装着字符的盒子,这个方法负责把盒子打开,取出里面的字符。

对比总结表

特性 str.charAt(i) c.charValue()
主体对象 是一个 String (字符串) 是一个 Character (对象)
操作目的 从字符串中提取特定位置的字符 把包装对象"拆箱"成基础字符
返回内容 基础字符 char 基础字符 char

打个比方:

  • str.charAt(i) 就像是从一串珠子里挑出其中一颗。
  • c.charValue() 就像是你手里已经拿了一颗珠子,但是这颗珠子外面还包了一层保护膜,你需要把它拆掉才能使用珠子本身。
相关推荐
步行cgn14 分钟前
Spring MVC POST 请求乱码:原因与完整解决方案
java·spring·mvc
y1su16 分钟前
Leetcode 链表,树,回溯 模板
java·leetcode·链表
qianyuqiye120 分钟前
K8s 命名空间与 Pod 入门:从概念到实战
java·docker·kubernetes
牧瀬クリスだ28 分钟前
观察者模式:一个对象变化,一群对象自动响应
java·观察者模式·设计模式
小张成长计划..32 分钟前
【Linux】26:线程互斥和同步
java·开发语言
邪修king3 小时前
Re:Linux 系统篇(三十五):进程间通信Chapter2:从匿名管道到进程池:Linux 进程间通信实战(深度理解「先描述,再组织」)
java·linux·运维
拆房老料4 小时前
【第四部分:Agentic 智能体设计模式】16. 一个 Prompt 搞不定复杂任务?试试 Prompt Chaining
java·前端·人工智能·设计模式·prompt
张张123y4 小时前
后端第十四课:Agent 记忆系统(让 Agent 记住上下文和用户,跨会话不健忘)
java·大数据·人工智能·python·agent·记忆
曹牧9 小时前
C#:空合并运算符
java·前端·数据库
布吉岛的石头9 小时前
Java 程序员第 50 阶段2:预训练的目标函数:自回归语言建模本质
java·开发语言·人工智能·深度学习·回归·transformer