2013-04-10 155 views
-3

我必須寫,將獲得一個String像「邁克·40馬克59麗塔99」並將其拆分成兩個陣列的方法,一會String陣列和另一個將是int陣列。輸出應如下:字符串分割到兩個陣列一個int和一個字符串

Mike 40, 
Mark 59, 
Rita 99, 

這裏是我有什麼,我很新,在這裏停留。請幫助,這將不勝感激。

public static String[] getNames(){ 
    String s = JOptionPane.showInputDialog(" Enter one or more names"); 
    return s.split(" \\s+") 
+1

如果知道原來'String',簡單的拆分它「」(空格)的格式,然後通過它循環,每一秒元素將成爲一個數字。 – MadProgrammer 2013-04-10 04:28:58

+0

我同意。我得到了答案,我應該發佈嗎? – acdcjunior 2013-04-10 04:35:01

+0

是的。你可以請張貼嗎? – Karki 2013-04-10 04:39:45

回答

0

你可以寫你的邏輯就像下面:

String input = "Mike 40 Mark 59 Rita 99"; 
String[] arr = input.split(" "); 

List<String> stringList = new ArrayList<String>(); 
List<Integer> intList = new ArrayList<Integer>(); 
for(String element : arr){ 
    if(elementIsnumber()) // write your logic to check its int or string 
    { 
     intList.add(parseInt(element)); // write to parse string to int here 
    } 
    else{ 
     stringList.add(element); 
    } 
} 

String[] srtingArray = stringList.toArray(new String[0]); 
int[] intArray = intList.toArray(new int[0]); 
+0

我同意,但我不知道用戶會輸入什麼內容。 – Karki 2013-04-10 04:45:15

+0

它的所有權利,因爲用戶可以輸入int或字符串作爲輸入。所以這會照顧它。 – 2013-04-10 05:01:09

+0

歡迎您:) – 2013-04-10 05:08:40