2013-03-26 61 views
0

我最近在这里问了一个问题,并学习了如何拆分我的阵列。现在我正忙于存储分离的数组。我知道这个代码可能是非常错误的,因为我只是想弄明白自己。此代码的预期目的是查看在分割数组(可以是10个名称和10个角度)之后是否可以存储输入。 System.out的目的是查看它们是否存储。我不断收到符号结果找不到的错误。任何帮助表示赞赏。分割和存储数组的正确方法?

import java.util.ArrayList; 
import java.util.Arrays; 
import javax.swing.JOptionPane; 

public class PeerTutoring 
{ 
public static void main(String[] args) 
{ 
    ArrayList<String> list = new ArrayList<String>(); 

    int a = 0; 
    int b = 1; 
    int c = 0; 
    int d = 1; 

    for(int i=0;i<20;i++) { 
     String line; 
     line = JOptionPane.showInputDialog("Please enter tutor name and their highest earned degree."); 
     String[] result = line.split("\\s+"); 
     String[] name = new result[a]; 
     String[] degree = new result[b]; 
     a++; 
     b++; 
     System.out.println(name[c]); 
     System.out.println(degree[d]); 
     c++; 
     d++; 
} 
} 
+0

'String [] result = line.split(“\\ s +”);'此行已经有您的String int0 String数组用空格分隔。 – Smit 2013-03-26 00:23:34

回答

0

new result[a]是...排序...语法用于初始化保持result情况下,与大小a阵列。但这不是你的意思 - 你没有一个名为result的类,而你只想获得名为result的数组的列出的。对?

只需删除new以及name声明中的额外[]

String name = result[a]; 
String degree = result[b]; 

我想你会发现the Java Tutorial: Arrays非常有用。


提示以备将来使用:如果你想打印一个数组,你不需要做所有这些工作。只需使用Arrays#toString()

0

除了什么马特球前面说的,你也需要做

System.out.println(name); 
    System.out.println(degree); 

和删除++,B ++,C++和d ++。原因是,当你分裂时,结果[0]和结果[1]分别持有名字和度数的值。

您将需要一个单独的机制将这些值存储在列表中。