java - 我如何从字符串中获取int数组

标签 java arrays string numbers

我想从 StringTokenizer 中创建数字数组。

如果有文本行 “2345”
我想获取数组列表 [2,3,4,5] 。所以首先, 我制作了 Arraylist 并使用 hasMoreToken 从 st token 中获取

ArrayList argument_list = new ArrayList();
 while(st.hasMoreTokens()){
    argument_list.add(Integer.valueOf(st.nextToken()));
}
int[] arguments = new int[argument_list.size()];

现在我注意到我的argument_list将整个字符串获取到数字“2345”而不是“2”,“3”,“4”,“5” 因为没有像“,”这样的“分割词”

也许我可以使用“/”来除数 但我认为有一种方法可以分割字符串并获取数字数组,即使我不知道

有没有办法将 token 拆分为数组?

最佳答案

另一种方法是使用String#toCharArray,并使用生成的char[]

List<Integer> ints = new ArrayList<Integer>();
char[] chars = "2345".toCharArray();
for (char c : chars) {
    ints.add(Integer.parseInt(String.valueOf(c)));
}

您还可以在循环声明中转换为 char 数组,从而不再需要 chars 变量

List<Integer> ints = new ArrayList<Integer>();
for (char c : "2345".toCharArray()) {
    ints.add(Integer.parseInt(String.valueOf(c)));
}

关于java - 我如何从字符串中获取int数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27665771/

相关文章:

java - ASM库中MethodNode的 'visitMethodInsn'方法的实现

java - 如何防止XXE攻击

java - 如何将 eclipse 从 "c/c++"更改为 "java"环境?

C++ - 检查字符串是否为空

Python str.format() --- 传入列表,输出列表

javascript - 如何使用Jquery分割字符串

java - JDBC 类型 4 驱动程序

android - 自定义 ArrayAdapter 使用 NullPointerException 打乱 View

javascript - 使用Key获取Array对象的值

javascript - 选择具有特定元素值的数组