Java中的if else结构会打印出奇怪的代码

时间:2018-08-29 21:16:57

标签: java if-statement logic

嗨,我在Java中对if-else语句进行了练习,问题是当我运行它打印的代码时; 输入卡:9 S 结束 9ofS

请参见以下代码示例:

 String suit;
 String rank;
 String userOne; 
 Scanner sc = new Scanner( System.in );
 System.out.print("Enter a card: ");
 rank= sc.next(); 
 suit= sc.next();
 userOne= sc.next();
 if (userOne.equals("9")){
   System.out.println("Nine");
 } else if (userOne.equals("S")){
   System.out.println("Spades");       
 }
 System.out.print(rank+ "of" +suit);

必须将代码压缩在底部,我知道它的格式不正确,但是为了获得该问题的答案,我不得不像这样布置它。

为什么打印出代码-

Enter a card: 9 S
end
9ofS

代替

Enter a card: 9 S
Nine of Spades ?

1 个答案:

答案 0 :(得分:0)

您的代码完全按照您说的去做。据我了解,您想要以下类似内容:

String suit;
         String rank;
         String userOne; 
         Scanner sc = new Scanner( System.in );
         System.out.print("Enter a card: ");
         rank= sc.next(); 
         suit= sc.next();
         userOne= sc.next();
         if (userOne.equals("9")){
           System.out.println("Nine");
    String nine = "Nine" ;
         } else if (userOne.equals("S")){
           System.out.println("Spades"); 
    String spades = "Spades";      
         }
         System.out.print(nine+ " of " +spades);