所以我是java的新手,我刚开始学习,同时制作一个非常简单的程序来确定当前的温度是热,暖还是冷。 一切都好,但是当我输入“else if”时,我会得到一个bug,我想知道如何解决它并且最重要的是:为什么我会收到此错误?所以我不再重复了。我已经找到了我的问题的答案,但我什么也没找到,所以这就是我在这里问的原因。在这里你可以看到我得到的错误:http://imgur.com/a/f9SJ6。
package com.marin.src;
import java.util.Scanner;
public class MainClass {
public static void main(String[] args){
double temp;
Scanner s = new Scanner(System.in);
System.out.println("Introduce una temperatura: "); //That only means "enter a temperature"
temp = s.nextDouble();
if(temp > 30){
System.out.println("Hace calor."); //That only means "it's hot"
}
else{
System.out.println("Hace frío."); //That only means "it's cold"
}
else if (temp > 25){
System.out.println("La temperatura es normal."); //that only means "it's warm"
}
}
}
答案 0 :(得分:2)
您必须将else if
放在else
之前,因为else
块是每个
除if
条件之外的其他情况
所以你必须这样做:
if () {
} else if() {
} else {
}
如果if
条件为false
,则会检查else if
条件,如果不成功,则会执行else
块
答案 1 :(得分:0)
使用:
package com.marin.src;
import java.util.Scanner;
public class MainClass {
public static void main(String[] args){
double temp;
Scanner s = new Scanner(System.in);
System.out.println("Introduce una temperatura: "); //That only means "enter a temperature"
temp = s.nextDouble();
if(temp > 30){
System.out.println("Hace calor."); //That only means "it's hot"
} else if (temp > 25){
System.out.println("La temperatura es normal."); //that only means "it's warm"
}
else{
System.out.println("Hace frío."); //That only means "it's cold"
}
}
}
答案 2 :(得分:0)
因为您试图在else if
语句后写else
。您的else
语句应写为最后一个条件。如果不满足上述任何一种情况,就会在最后执行。