0

ファイルからデータを読み取り、配列に入力するプログラムに取り組んでいます。動作するはずですが、プログラムから奇妙な出力が得られます (エラーはなく、実行され、奇妙な結果が得られます)。

これが私のコードです:

    Scanner s = new Scanner(new File("../Computer/src/computers/computer.txt"));
    String[] comps = new String[2];

    int i = 0;

    while (s.hasNextLine()) {
        comps[i] = s.nextLine();
        i++;
    }
    s.close();

    System.out.println(comps);

私が得る出力は次のとおりです。

[Ljava.lang.String;@3d62b333
BUILD SUCCESSFUL (total time: 1 second)

また、テキスト ファイルに問題がある場合、テキスト ファイルは次のようになります。

12344555 Dell Intel 499.99
23623626 Asus AMD 299.99
4

2 に答える 2

4

そのような配列を印刷することはできません。取得している出力は、ハッシュコードを出力するデフォルトですtoString()Object

それを繰り返して、それぞれを印刷する必要がありますString

for (String s : comps)
{
    System.out.println(s);
}
于 2013-02-04T00:15:57.590 に答える
0

ファイルを正しく読み取っていますが、配列を誤った方法で出力しています。

以下を使用して、配列を印刷します。

    for(int j =0;j<comps.length;j++)
    {
        System.out.println(comps[j]);
    }
于 2013-02-04T00:25:58.970 に答える