2013-04-10 106 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