1

假设你有一个字符串:

    String numbers = "123 11 4392034 2";

并且您想要检索字符串中的每个整数(以空格分隔)。这样做的最佳方法是什么?

4

3 回答 3

6

split()按空间和Integer.parseInt()每个数组元素

于 2013-07-17T22:25:16.287 回答
2
String numbers = "123 11 4392034 2";
String [] num = numbers.split(" ");

然后使用此方法检索整数数组:

public int[] getIntegerArray(String[] numbers) throws NumberFormatException {
    if (numbers!= null) {
        int intarray[] = new int[numbers.length];
        for (int i = 0; i < numbers.length; i++) {
            intarray[i] = Integer.parseInt(numbers[i]);
        }
        return intarray;
    }
    return null;
}
于 2013-07-17T22:30:37.343 回答
0
String[] tokens = "123 234".split("\\s")

for(String token : tokens){
  println Integer.parseInt(token)
}

链接:

  1. 运行 groovy 脚本: http: //groovyconsole.appspot.com/script/1031001
  2. 位于http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html的 Java 模式类
  3. 位于http://docs.oracle.com/javase/tutorial/essential/regex的 Java 正则表达式教程

笔记

  1. \s 表示空白字符类,[ \t\n\x0B\f\r]。额外的 '\' 转义第一个,因为 '\' 本身就是一个转义字符。请参阅http://docs.oracle.com/javase/tutorial/java/data/characters.html
于 2013-07-17T23:31:57.880 回答