这段代码实际上运行正常,我的代码问题是如何将枚举常量存储在任何变量中,为什么我们使用枚举?该陈述的含义是什么HouseType houseType;
?非常感谢你。
import java.util.Scanner;
public class HomeBuying {
public enum HouseType{UNKNOWN,SINGLEFAMILY,TOWNHOUSE,CONDOMINIUM};
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter the type of house you want to purchase"); //1.Single Family/n" " 2. Townhouse/n" " 3. Condominium/n");
int choice = input.nextInt();
HouseType houseType;
switch(choice) {
case 1:
houseType = HouseType.SINGLEFAMILY;
break;
case 2:
houseType = HouseType.TOWNHOUSE;
break;
case 3:
houseType = HouseType.CONDOMINIUM;
break;
default:
houseType = HouseType.UNKNOWN;
break;
}
System.out.println(houseType);
}
答案 0 :(得分:0)
您提供的代码段已将Enum值存储在变量中。
HouseType houseType; //declaration of variable of type HouseType (means it can store values of the HouseType enum)
houseType = HouseType.UNKNOWN; //put value into the houseType variable
每当我们需要表示来自某些已知和有限集的值时,我们就使用枚举。例如,如果您希望程序跟踪它是白天还是黑夜,您可以为自己制定一些规则并使用整数,例如1代表日,0代表夜晚。但那么其他数字意味着什么呢?或者您可以使用布尔值(同样, false 和 true 附加一些任意含义)。
enum TimePeriod{
DAY,
NIGHT
}
通过让您明确指出哪些值意味着,枚举代表了更好的选择。这不仅仅是一种便利 - 在你的意图中明确是使你的程序可以被其他人读取的原因。