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)

不会在 Java 中编译,因为lengthis an int,但 a 的条件部分while必须是布尔值。我猜你想只要字符串不为空就继续,所以将while条件更改为

while (length > 0)

编译代码需要解决的其他问题:

此外,代码将使用 编译,String input = new String();但完全不需要赋值。在 Java 中,您几乎不需要new字符串。相反,使用字符串文字。

于 2011-11-09T04:14:19.873 回答