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++;
}
}
4

2 に答える 2

0

new result[a]resultサイズが。のインスタンスを保持する配列を初期化するための...一種の...構文ですa。しかし、それはあなたが意味することではありません–という名前のクラスがなく、という名前の配列からresult要素を取得したいだけです。右?result

、、および宣言newの余分な部分[]を削除するだけです。name

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

Javaチュートリアル:配列は非常に便利だと思います。


将来の使用のためのヒント:配列を印刷する場合は、このすべての作業を行う必要はありません。を使用するだけArrays#toString()です。

于 2013-03-26T00:22:48.730 に答える
0

マットボールが以前に言ったこととは別に、あなたもする必要があります

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

そして、a ++、b ++、c++およびd++を削除します。その理由は、分割すると、result[0]とresult[1]がそれぞれnameとdegreeの値を保持するためです。

これらの値をリストに保存するには、別のメカニズムが必要になります。

于 2013-03-26T01:36:27.717 に答える