如何在字符串中分配变量?

时间:2014-02-25 02:28:11

标签: java arrays string

我需要在字符串中分配变量。

 String s = "102, 145, 163, 124";

我想分配一个单独的变量,如下所示;

num1 = 102;
num2 = 145;
num3 = 163;
num4 = 124;

我需要以编程方式执行它,因为值会改变并增加,因此字符串s中的任何内容都被赋予变量。 感谢

4 个答案:

答案 0 :(得分:2)

如果值会发生变化,您应该考虑使用ArrayList,它将是动态的,并随着数据的长度而变化。

例如,您可以轻松地将所有数据转换为ArrayList,如下所示:

String string = "102, 145, 163, 124";
ArrayList<Integer> list = new ArrayList<Integer>();
for(String s : string.split(",")) list.add(Integer.parseInt(s.trim())); 

然后可以通过调用它的索引来访问每个项目:

int num0 = list.get(0);
int last = list.get(list.size() - 1);

在列表中存储数据是一种可扩展的动态方法。

答案 1 :(得分:1)

因为存在动态数量的值,所以需要使用数组(或ArrayList):

String s = "102, 145, 163, 124";

String[] nums = s.split(", ");

// just printing the array
for (int i = 0; i < nums.length; i++) {
    System.out.println(nums[i]);
}

输出:

102
145
163
124

答案 2 :(得分:0)

StringTokenizer tokenizer = new StringTokenizer(s, ", ");
for (int i = 0; i < tokenizer.countTokens(); i++)

答案 3 :(得分:0)

尝试拆分然后解析你的字符串

String s = "102, 145, 163, 124";
String[] sArray = s.split(",");
List<Integer> integers = new ArrayList<Integer>();
for(String item:sArray){
  integers.add(Integer.parseInt(s.replace(",","")));
}