Mak*_*kri 0 java loops break while-loop switch-statement
我试图制作一个读取温度的程序,给你一个关于它的平均体温之上,之下或之间有多好的反馈.在此之后,我希望程序通过输入询问用户他/她是否想要进行另一次阅读.为此,我使用switch语句.它几乎正常工作:用户输入y,程序再次循环,一切都非常好.但是,当用户输入n时,程序仍然重启?谁能帮我解释为什么会这样?
代码:
import java.util.*;
class Uke2Ekstra17{
public static void main(String[]args){
Scanner input=new Scanner(System.in);
boolean lokke=true;
while(lokke=true){
System.out.println("Vennligst oppgi temperaturen din, så skal du få vite om du ligger over, under eller innenfor gjennomsnittstemperaturen! Skriv her: ");
double temp=input.nextDouble();
if(temp<36.5){
System.out.println("Du ligger under gjennomsnittet med " + (36.5-temp) + " grader.");
}else if(temp>36.5 && temp<37.5){
System.out.println("Du ligger innenfor gjennomsnittstemperaturen.");
}else{
System.out.println("Du ligger over gjennomsnittet med " + (temp-37.5) + " grader.");
}
System.out.println("Vil du gjøre en ny maaling? y/n: ");
char svar=input.next().charAt(0);
switch(svar){
case 'y':
lokke=true;
break;
case 'n':
lokke=false;
break;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
你的布尔值while (lokke=true)是分配 lokke,而不是检查它.它应该是一个==.如果你虽然检查一个布尔值,你不需要把它比作true或false明确.您可以使用while (lokke)
| 归档时间: |
|
| 查看次数: |
825 次 |
| 最近记录: |