我知道如何计算出字符串中某个字符或数字的索引,但是否有任何预定义的方法可以用来给我第n个位置的字符?所以在字符串“foo”中,如果我请求索引为0的字符,它将返回“f”。

注意——在上面的问题中,我所说的“字符”并不是指字符数据类型,而是字符串中的字母或数字。这里重要的是,当方法被调用时,我没有接收到一个字符,而是一个字符串(长度为1)。我知道substring()方法,但我想知道是否有一个更整洁的方法。


当前回答

CharAt函数不工作

Edittext.setText(YourString.toCharArray(),0,1);

这段代码运行良好

其他回答

你需要。charat ()

这是一个教程

"mystring".charAt(2)

回报的年代

如果你执意要使用字符串,有几种方法可以将char转换为字符串:

String mychar = Character.toString("mystring".charAt(2));

Or

String mychar = ""+"mystring".charAt(2);

甚至

String mychar = String.valueOf("mystring".charAt(2));

为例。

你要找的方法是charAt。这里有一个例子:

String text = "foo";
char charAtZero = text.charAt(0);
System.out.println(charAtZero); // Prints f

有关更多信息,请参阅Java文档String.charAt。如果你想要另一个简单的教程,这个或这个。

如果不希望结果是char数据类型,而希望是字符串,则可以使用Character。toString方法:

String text = "foo";
String letter = Character.toString(text.charAt(0));
System.out.println(letter); // Prints f

如果你想了解更多关于Character类和toString方法的信息,我从Character.toString的文档中获取了我的信息。

将charAt与不获取char的要求相结合的混合方法可以是

newstring = String.valueOf("foo".charAt(0));

但说实话,这并不比substring()更“整洁”。

它是如此简单:

String charIs = string.charAt(index) + "";

CharAt函数不工作

Edittext.setText(YourString.toCharArray(),0,1);

这段代码运行良好