0
import java.util.Scanner;
public class Program3_5
{
    public static void main (String[]args)
    {
        Scanner scan = new Scanner(System.in);
        String input = new String();
        System.out.println("Please enter a string: ");
        input=scan.next();
        int length;
        length = input.length;
        input.substring();
        System.out.println(charAt(0));
        while (length)
            {
                System.out.println(charAt(0 + 1));
            }
        }
    }

「シンボルが見つかりません - 可変長」というエラーが表示されます。さまざまなことを試しましたが、うまく動作しません。Java 初心者!前もって感謝します。

たとえば、ユーザーが次のように入力したとします。Hello There 出力では、文字が別々の行に出力されます。

4

1 に答える 1

1

String#length()のフィールドではなく、メソッドですString。メソッドを呼び出す必要があります。Java では、メソッドは括弧を使用して呼び出されます (または "呼び出されます")。だから、変えて

length = input.length;
// to
length = input.length();

次に表示されるコンパイル エラーを予測します。

while (length)

lengthは であるために Java でコンパイルされませんintが、 の条件部分はwhileブール値でなければなりません。文字列が空でない限り続行したいと思うので、while条件を次のように変更します

while (length > 0)

コードをコンパイルするために解決する必要があるその他の問題:

また、コードは でコンパイルされますString input = new String();が、割り当てはまったく不要です。Java では、文字列が必要になることはほとんどありませんnew。代わりに、文字列リテラルを使用してください。

于 2011-11-09T04:14:19.873 に答える