在Java中将StringBuilder转换为整数值

时间:2015-04-18 13:22:28

标签: java stringbuilder

问题很简单。让我们说这里有一个StringBuilder sb内部的某些数字:

"25 9631 12 1895413 1 234564"

如何逐个获取这些数字并将其初始化为ArrayList<Integer> list或者更具体一点是否可能?谢谢你检查!

2 个答案:

答案 0 :(得分:2)

尝试将该字符串拆分为:

String[] numbers = sb.toString().split(" ");//if spaces are uneven, use \\s+ instead of " "
for (String number : numbers) {
    list.add(Integer.valueOf(number));
}

答案 1 :(得分:0)

我的解决方案可能不是最好的,

从您的问题来看,我所理解的是,基本上您希望从字符串构建器中获取所有数字并将其放入整数数组中。

所以这里,

首先,您可能希望从字符串构建器中获取字符串。

String myString = mystringbuilder.toString();

此字符串现在包含带空格的数字。

现在使用以下内容,

String[] stringIntegers = myString.split(" "); // " " is a delimiter , a space in your case

此字符串数组现在包含从0开始的位置的整数。

现在,您可能想要获取此字符串数组并解析其值并将其放入ArrayList中。

这就是它的完成方式,

ArrayList<Integer> myIntegers = new ArrayList<Integer>();    
for(int i = 0; i<stringIntegers.length;i++){
myIntegers.add(Integer.parseInt(stringIntegers[i]));
}

现在你的myIntegers arraylist中填充了所需的整数,让我为你分解它。

  1. 您为整数创建一个数组。
  2. 循环遍历字符串数组
  3. 在for循环中,对于字符串数组的每个位置,您将该位置的字符串转换为Integer.parseInt(String)的整数;
  4. 然后,您只需将其添加到我们创建的arraylist中。
  5. 完整代码:

    String mynumbers = stringBuilder.toString();
    String[] stringIntegers = mynumbers.split(" ");
    ArrayList<Integer> myIntegers = new ArrayList<Integer>();
    for(int i=0;i<stringIntegers.length;i++){
    myIntegers.add(Integer.parseInt(stringIntegers[i]));
    }