这是原始提示:
我需要编写一个程序,从命令行中的用户处获取以逗号分隔的整数字符串(例如“4,8,16,32,…”),然后将该字符串转换为整数数组列表(使用包装类),每个元素按顺序包含输入整数之一。最后,使用 for 循环将整数输出到命令行,每个整数在单独的行上。
这是我到目前为止的代码:
import java.util.Scanner;
import java.util.ArrayList;
public class Parser {
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
ArrayList<String> myInts = new ArrayList<String>();
String integers = "";
System.out.print("Enter a list of delimited integers: ");
integers = scnr.nextLine();
for (int i = 0; i < myInts.size(); i++) {
integers = myInts.get(i);
myInts.add(integers);
System.out.println(myInts);
}
System.out.println(integers);
}
}
我很困惑该程序的其余部分该去哪里。如果有人可以帮助向我解释我需要做什么,我将不胜感激!
最佳答案
正如 Matthew 和 Marc 指出的那样,您必须首先将字符串拆分为标记,然后解析每个标记以将它们转换为整数。
你可以尝试这样的事情:
String stringOfInts = "1,2,3,4,5";
List<Integer> integers = new ArrayList<>();
String[] splittedStringOfInts = stringOfInts.split(",");
for(String strInt : splittedStringOfInts) {
integers.add(Integer.parseInt(strInt));
}
// do something with integers
在 split() 方法中,您定义如何将字符串拆分为标记。在你的例子中,它只是逗号(,)符号。
希望这有帮助。
问候帕特里克
关于java - 逗号分隔的整数字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36164253/