在为我的应用程序创建任何条件之前,我需要能够让while语句在while循环下运行。它说它无法在1.7下的任何编译器下工作。 JRE。我不知道这意味着什么,我也不知道如何将变量更改为枚举类型。
package PokerApp;
import java.util.Scanner;
public class PokerApp {
public static void main(String[] args) {
int card1 = 0;
int card2 = 0;
int play;
String fc1 = "", fc2 ="";
String answer = "";
Scanner scan = new Scanner(System.in);
//**************************************
// Card1
//**************************************
System.out.println("Press 1 to evalaute your cards: ");
play = scan.nextInt();
while (play != 0){
System.out.println("First Card: ");
if (scan.hasNextInt())
{
card1 = scan.nextInt(9)+2;
}
else{
fc1 = scan.next();
switch(fc1)
{
case "A":
card1 = 14;
break;
case "K":
card1 = 13;
break;
case "Q":
card1 = 12;
break;
case "J":
card1 = 11;
break;
default:System.out.println("Incvalid entry");
}
//***************************************
// Card2
//***************************************
System.out.println("Second card: ");
if (scan.hasNextInt())
{
card2 = scan.nextInt(9) +2;
}
else{
fc2 = scan.next();
switch (fc2)
{
case "A":
card2 = 14;
break;
case "K":
card2 = 13;
break;
case "Q":
card2 = 12;
break;
case "J":
card2 = 11;
break;
default:System.out.println("Invalid entry.");
}
}
}
}
}
}
答案 0 :(得分:2)
Allowing String
s in switch
statements was new in Java 1.7.将您的Java升级到1.7+并在Eclipse中使用它,或者如果您不能,则必须将您的案例转换为if-else语句。
答案 1 :(得分:0)
在1.7之前的JDK版本中,字符串无法用作switch语句的一部分。您需要安装JDK 1.7并将Eclipse设置为使用此版本的JDK。
请参阅此video,详细说明如何切换JRE / JDK版本。