逗号分隔的整数字符串

时间:2016-03-22 20:12:54

标签: java

这是原始提示:

我需要编写一个程序,在命令行中从用户获取逗号分隔的整数字符串(例如“4,8,16,32,...”),然后将String转换为整数的ArrayList(使用包装器类)每个元素按顺序包含一个输入整数。最后,使用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);

}
}

我对这个程序的其余部分感到困惑。如果有人可以帮我向我解释我需要做什么,那将非常感激!

1 个答案:

答案 0 :(得分:1)

正如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()方法中,您可以定义如何将字符串拆分为标记。在你的情况下,它只是逗号(,)符号。

希望这有帮助。

关心帕特里克