2014-02-28 78 views
0

Java中是否有可能將String劃分爲多個變量int如何將字符串分解爲多個變量

String s = "1,2,3,4,5,6"; 

int var1 = 1; 

int var2 = 2; 

int var3 = 3; 

等。

Thanks 
+5

's.split(「,」);' – donfuxx

+0

不,但您可以**將split分隔爲字符串數組,使用「,」作爲分隔符,然後將其轉換(解析)爲int數組 – Selvin

回答

0

split()方法是的另一種方法是使用StringTokenizer類更傾向於one.One,如下

String abc = "1,2,3,4"; 

    int i = 0; 
    StringTokenizer st = new StringTokenizer(abc,","); 
    int array[] = new int[st.countTokens()]; 
    while (st.hasMoreTokens()) { 
     array[i] = Integer.parseInt(st.nextToken().toString()); 
     i++; 
    } 

我知道你的問題已經solved.But此代碼段只是爲了引入使用StringTokenizer

0

除非使用反射,否則不能動態地將值分配給每個變量。

你可以做的是split the string on the commas,convert each token into an integer並把這些值放入一個集合中。

例如:

int[] result; 
String s = "1,2,3,4,5,6"; 
String[] tokens = s.split(","); 
result = new int[tokens.length]; 

for(int i = 0; i < tokens.length; i++){ 
    result[i] = Integer.parseInt(tokens[i]); 
} 

現在可以將result陣列中訪問的每個值(可能通過分配var1result[1])。

如上所述:您也可以直接使用反射將其添加到變量中,但這通常表明您的設計在某處出錯。

4
String s = "1,2,3,4,5,6"; 
String[] vars = s.split(","); 
int [] varIn= new int[vars.lenght] 

for (int i=0;i<vars.lenght;i++) 
{ 
    varIn[i]= Integer.parseInt(vars[i]); 
} 

==> varIn[0]=1; 
    varIn[1]=2; 
    etc.. 
相關問題