gpt4 book ai didi

java - 字符串未在条件中声明?

转载 作者:搜寻专家 更新时间:2023-11-01 01:03:05 25 4
gpt4 key购买 nike

这是我用 Java 编写的第二个脚本,因为我刚刚开始写这本书,所以对于不可避免的荒谬问题,我深表歉意。

我正在编写一个脚本来唱“墙上挂着 99 瓶啤酒”,并尝试在循环内的条件中声明一个新的 String 变量。不幸的是,它不会编译,因为该字符串应该未声明。然后,当我将它从条件中拉出但仍在循环中时,它工作正常。我在这里遗漏了什么吗?

工作:

    while (beersLeft >= 0) {
String sOrNot = "";
if (beersLeft > 1) {
sOrNot = "s";
} else {
sOrNot = "";
}
System.out.println(beersLeft+" bottle"+sOrNot+" of beer on the wall, "+beersLeft+" bottle"+sOrNot+" of beer!");
System.out.println("Take one down, pass it around, "+beersLeft+" bottle"+sOrNot+" of beer on the wall!");
System.out.println();

beersLeft = beersLeft-1;
}

不工作

    while (beersLeft >= 0) {
if (beersLeft > 1) {
String sOrNot = "s";
} else {
String sOrNot = "";
}
System.out.println(beersLeft+" bottle"+sOrNot+" of beer on the wall, "+beersLeft+" bottle"+sOrNot+" of beer!");
System.out.println("Take one down, pass it around, "+beersLeft+" bottle"+sOrNot+" of beer on the wall!");
System.out.println();

beersLeft = beersLeft-1;
}

错误:

Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - Erroneous tree type: <any>
at ch01.BottlesOfBeer.main(BottlesOfBeer.java:21)

最佳答案

如果您在 if 语句 block 中定义了字符串,它将不在范围内。

关于java - 字符串未在条件中声明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16258613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com