以下代码是关于java switch和if else问题,麻烦大佬帮忙看看~

import java.util.Scanner;
public class guess{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("猜拳游戏:1是剪刀,2是石头,3是布");
System.out.println("请出拳");
int person=in.nextInt();
int computer=(int)(Math.random()*3+1);
String mark="拳头";
String mark2="拳头";
switch(person){
case 1:
mark="剪刀";
break;
case 2:
mark="石头";
break;
case 3:
mark="布";
break;
}
switch(computer){
case 1:
mark2="剪刀";
break;
case 2:
mark2="石头";
break;
case 3:
mark2="布";
break;

}
if(person>3){
System.out.println("能不能好好玩");

}else{
if(person==computer){
System.out.println("平局");
}else if(person==(computer+1)%3+1){
//(person==1&&computer==2||person==2&&computer==3||person==3&&computer==1)
System.out.println("你出的是:"+mark+" "+"电脑出的是:"+mark2+"-_-你输了");
}else{
System.out.println("你出的是:"+mark+" "+"电脑出的是:"+mark2+"~—~你赢了");
}}
}
}
能不能将
if(person>3){System.out.println("能不能好好玩");}else
这句 加载到switch下的 案例case中
用switch下 break跳出命令代替if_else
ps:本人新手 自学java第3天 望高手能用简单的语法回答

森栏
浏览 141回答 2
2回答

森林海

import java.util.Scanner;public class guess{public static void main(String[] args){Scanner in=new Scanner(System.in);System.out.println("猜拳游戏:1是剪刀,2是石头,3是布");System.out.println("请出拳");int person=in.nextInt();int computer=(int)(Math.random()*3+1);String mark="拳头";String mark2="拳头";switch(person){case 1:mark="剪刀";break;case 2:mark="石头";break;case 3:mark="布";break;default: //不是1、2、3 说明输入不对System.out.println("能不能好好玩");  return;//跳出方法体,后续都不执行}switch(computer){case 1:mark2="剪刀";break;case 2:mark2="石头";break;case 3:mark2="布";break;}if(person>3){System.out.println("能不能好好玩");}else{if(person==computer){System.out.println("平局");}else if(person==(computer+1)%3+1){//(person==1&&computer==2||person==2&&computer==3||person==3&&computer==1)System.out.println("你出的是:"+mark+" "+"电脑出的是:"+mark2+"-_-你输了");}else{System.out.println("你出的是:"+mark+" "+"电脑出的是:"+mark2+"~—~你赢了");}}}}

慕田峪7331174

不能转换switch 只支持char int boolean byte类型不支持条件语句
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python
Java