如何将列表项转换为int / double

时间:2013-12-30 18:46:04

标签: java string list

我列了一个清单:

List<String> list = new ArrayList<String>();

String someData = "1234";

list.add(someData);

有没有办法将someData转换为intdouble?我之所以成为String的原因是我必须从Scanner输入一些信息(使用循环)。他们中的大多数是String。现在我需要很少一些是int-like因为我想做一些数学运算。

3 个答案:

答案 0 :(得分:4)

使用:

int i = Integer.parseInt(someData);

我真的没看到List与它有什么关系?如果你想要一个整数列表,你可以使用:

List<Integer> list = new ArrayList<Integer>();

String someData = "1234"; 
list.add(Integer.parseInt(someData));

同样适用于:List<Double>Double.parseDouble()

请注意,parseInt()可以抛出NumberFormatException。要么确保不是这种情况,要么用try-catch处理它。

答案 1 :(得分:2)

您可以按照其他答案的建议进行操作,也可以更改在原点扫描数据的方式:

List<Integer> list = new ArrayList<Integer>();

while (shouldScan) {
  int value = scanner.nextInt();
  list.add(value);
  ..
}

请注意,如果输入格式错误,您应该注意捕获InputMismatchException异常。

如果您选择使用Integer.parseInt(string),则应该注意抓住NumberFormatException

答案 2 :(得分:0)

您也可以使用:

int flag=Integer.valueOf(someData);

如果您想将其存储在整数列表中,您只需使用:

List<Integer> list = new ArrayList<Integer>();

list.add(Integer.valueOf(someData));