0

漠然としているのかどうかはわかりませんが、私の主な目標は、ユーザーに一連の単語 (任意の量) を尋ね、最初と最後の単語を教えてくれるプログラムを作成することです。アルファベットで、最短と最長です。これまでのところ、私はこれを持っています:

public static void main(String[] args)
{
    Scanner Keyboard = new Scanner(System.in);

    double[] Words = getNewArrayFrom(Keyboard);
    displayList(Words);

    int choice = 1;
    while(choice > 0)
    {
        System.out.println("What would you like to do?");
        System.out.println("1) Enter a new list of up to over 9000 words.");
        System.out.println("2) Find the shortest, longest, and first and last alphabetically from the list.");
        System.out.println("0) Exit the Program");

        choice = Integer.parseInt(Keyboard.nextLine());

        if(choice < 0 || choice > 2)
        {
            System.out.println("Invalid Choice Number " + choice);
            choice = 1;
            continue;
        }
        if(choice == 1)
        {
            //Enter the Words one at a time
            System.out.println("Enter each of the words.");
            for(int i = 0; i < 9001; i++)
            {
                System.out.print((i+1) + "> ");
                Words = Keyboard.nextLine();
                Words = getNewArrayFrom(Keyboard);
            }
        }
        else if(choice == 2)
        {

        }
    }
}

}

長々と申し訳ありませんが、私は自分が何をしているのか分かりません。私はこれをすべて記憶から書いたので、何をすべきか本当にわかりません。

私の主なポイントは、選択された場合に getNewArrayFrom() メソッドが入力文字列から配列を作成できるようにすることです。少なくとも、最短と最長、最初と最後のアルファベット順の単語を印刷する方法または方向を教えていただければ、私は永遠に素晴らしいと思います!

英語で申し訳ありませんが、それは私の母国語ではありません。

4

1 に答える 1

0

これは疑似宿題なので、詳細は省きます。

すべてのユーザー入力は 1 行からのものであると仮定します。つまり、apple banana orange grape. また、各単語がスペースで区切られていると仮定します。

Scanner を使用して 1 行の入力を読み取り、nextLine()を調べます。次に、スキャナーから返された行をスペースで分割します。ループを使用して手動でこれを行い、indexOf(...)作成substring(...)した配列に格納するか、split()を使用して組み込みの Java 文字列を取得できます関数がその部分を処理します。

を使用するsome_str.split(...)と、自動的に String[] 配列が返されるので、必要に応じて返すことができます。

于 2012-08-27T22:55:23.153 に答える