我知道java API函数charAt例如
String s="dato"
char r=s.charAt(0); r is equal d
但我的问题是它是如何真正起作用的,或者我可以使用什么函数而不是charAt函数来获得相同的结果?感谢
答案 0 :(得分:0)
目的是什么?我的意思是,如果charAt(0)
做了你想要的,为什么还要找其他东西?
但是,回答你的问题:不,没有(合理直接的)方法从Java中的字符串中获取n th 字符。您可以使用String
的{{1}}方法,但会返回substring(...)
,而不是String
。
或者首先将您的char
转换为String
的{{1}} char
数组String
并从数组中获取一个字符,但这只是愚蠢的有toCharArray()
可供您使用。
答案 1 :(得分:0)
没有“函数”,对象上只有方法,一个对象类为String
,此类为此提供charAt()
。请注意,String
类似于char
的数组或字符序列,并且检索字符只是访问该序列中的正确索引。
请注意,可以通过其他方式获取第一个char(比如将字符串转换为数组或其他任何方式),但这不会有意义。
答案 2 :(得分:0)
String类表示字符串。 Java程序中的所有字符串文字,例如" abc",都是作为此类的实例实现的。 字符串是不变的;它们的值在创建后无法更改。字符串缓冲区支持可变字符串。因为String对象是不可变的,所以可以共享它们。例如:
String str = "abc";
相当于:
char data[] = {'a', 'b', 'c'};
<强>的charAt 强>
返回指定索引处的char值。索引的范围从0到length() - 1.序列的第一个char值在索引0处,下一个在索引1处,依此类推,就像数组索引一样。
如果索引指定的char值是代理项,则返回代理值。
指定者:
接口CharSequence 中的charAt
<强>参数:强>
index - char值的索引。
<强>返回:强>
此字符串的指定索引处的char值。第一个char值位于索引0。
<强>抛出:强>
IndexOutOfBoundsException - 如果index参数为负数或不小于此字符串的长度。