2013-03-07 109 views

回答

6

從zvzdhk:

String[] array = "1,2,3,4,5".split(","); 

然後,解析您的整數:

int[] ints = new int[array.length]; 
for(int i=0; i<array.length; i++) 
{ 
    try { 
     ints[i] = Integer.parseInt(array[i]);   
    } catch (NumberFormatException nfe) { 
     //Not an integer 
    } 
} 
+0

它爲我工作感謝您的答覆,但.split(「,」)如何工作? – 2013-03-07 12:49:09

+1

請查閱Java API,它是一個String方法。 http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#split%28java.lang.String%29 – mmoore 2013-03-07 12:51:12

2

嘗試這種情況:

String[] array = "1,2,3,4,5".split(","); 
int[] result = new result[array.length]; 
for (int i = 0; i < array.length; i++) { 
    try { 
     result[i] = Integer.parseInt(array[i]); 
    } catch (NumberFormatException nfe) {}; 
} 
+0

他需要一個整數數組。 – 2013-03-07 12:33:54

+0

感謝您的回覆.. – 2013-03-07 12:49:49

+0

@Gorakh_sth不客氣。 – bsiamionau 2013-03-07 19:20:31

1

使用的StringTokenizer將由逗號分割字符串,然後把這些值/令牌整數數組。

public static int[] getIntegers(String numbers) { 
    StringTokenizer st = new StringTokenizer(numbers, ","); 
    int[] intArr = new int[st.countTokens()]; 
    int i = 0; 
    while (st.hasMoreElements()) { 
     intArr[i] = Integer.parseInt((String) st.nextElement()); 
     i++; 
    } 
    return intArr; 
} 
+0

非常感謝你 – 2013-03-07 12:50:05

0
String [] str = "1,2,3,4,5".split(","); 
int arrayInt[] = new int[str.length]; 
for (int i = 0; i < str.length; i++) 
    arrayInt[i]=Integer.valueOf(str[i]); 
0

隨着番石榴,你可以在一行做到這一點:

int[] array = Ints.toArray(Lists.newArrayList(Ints.stringConverter().convertAll(Splitter.on(",").split("1,2,3,4,5")))); 

左右(如果你不需要一個數組):

Iterable<Integer> ints = Ints.stringConverter().convertAll(Splitter.on(",").split("1,2,3,4,5"));