例如:public static void test() { int x = 0 ; String line = "A24 ASD 46" ; for ( int i = 0 ; i < line.length() ; i++) { if (Character.isDigit(line.charAt(i))) { int number = line.charAt(i) ; System.out.println(number); } }}"x" 正在打印字符的 ASCII 值,而不是索引 "i" 处的字符串元素!如何打印字符串索引中的元素?
2 回答

撒科打诨
TA贡献1934条经验 获得超2个赞
如果您在这里真的需要 int 值,则getNumericValue()
适用于这种情况:
int number = Character.getNumericValue(line.charAt(i))
但是,如果您只想打印源字符串中的所有数字,则不必转换char
为int
@Deadpool提到的。做就是了System.out.println(line.charAt(i));

智慧大石
TA贡献1946条经验 获得超3个赞
如果您想使用流查找数字:
String line = "A24 ASD 46";
line.chars()
.filter(Character::isDigit)
.mapToObj(Character::toString)
.forEach(System.out::print);
将打印 2446。
添加回答
举报
0/150
提交
取消