从charAt另存为int

时间:2019-02-28 21:18:56

标签: java

例如:

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”打印一个char的ASCII值,而不是索引“ i”处的String元素!如何在字符串的索引中打印元素?

2 个答案:

答案 0 :(得分:2)

如果您确实需要int值,则在这种情况下有getNumericValue()

int number = Character.getNumericValue(line.charAt(i))

但是,如果您只想打印源字符串中的所有数字,则不必像@Deadpool那样将char转换为int。只需System.out.println(line.charAt(i));

答案 1 :(得分:0)

如果要使用流查找数字:

String line = "A24 ASD 46";
line.chars()
    .filter(Character::isDigit)
    .mapToObj(Character::toString)
    .forEach(System.out::print);

将打印2446。