用java代码写循环赛 java循环语句有三种写法( 四 )


}
return newList;
}
public ListListString[] getResult() {
return result;
}
}
java for循环结构 用continue代码怎么写张浩长跑了8圈 接过水壶,继续比赛for循环,可以使用continue;代码. 表示继续循环
参考代码
public class Demo {
public static void main(String[] args) {
int loop = 10;//需要跑的圈数
String name = "张浩";
for (int i = 1; i = loop; i++) {
System.out.println(name+"在跑第"+(i)+"圈");
if(i==8) {
System.out.println(name+"在第"+(i)+"圈时,接过了水壶!!~");
continue;
}
}
System.out.println("坚持就是胜利, 跑完了!!!");
}
}
运行输出
张浩在跑第1圈
张浩在跑第2圈
张浩在跑第3圈
.....
张浩在第8圈时,接过了水壶!!~
张浩在跑第9圈
张浩在跑第10圈
坚持就是胜利, 跑完了!!!
Java使用循环,实现猜拳游戏统计多少局及胜率?为了让游戏有参与感,并体现java面对对象的思想,我先创建一个Player选手类,包含选手的名字playerName还有出拳方法guess() 。出拳时采用随机获取0、1和2的方式分别代表石头、剪刀和布,代码如下:
public class Player {
private String playerName;
public Player(String playerName) {
this.playerName = playerName;
}
public String getPlayerName() {
return playerName;
}
//出拳方法 0-石头 1-剪刀 2-布
public int guess() {
//随机获取0、1、2
int num = new Random().nextInt(3);
if (num == 0) {
System.out.print("选手" + this.playerName + "出的是石头 ");
} else if (num == 1) {
System.out.print("选手" + this.playerName + "出的是剪刀 ");
} else if (num == 2) {
System.out.print("选手" + this.playerName + "出的是布 ");
}
return num;
}
}
然后在主类中,首先要输入对局的总数,然后创建两名选手进行pk,在pk()方法中制定了获胜规则,详见代码注释 。最终统计并利用BigDecimal计算胜率(BigDecimal可以很完美的解决整数除法及其四舍五入保留小数的问题):
public class Main {
public static void main(String[] args) {
System.out.println("请输入本局局数:");
Scanner scanner = new Scanner(System.in);
int sum = scanner.nextInt();
//创建结果数组,resultArray[0]代表p1的获胜局数,resultArray[1]代表p2的获胜局数,resultArray[2]代表平局局数
int[] resultArray = new int[3];
//创建两名选手
Player p1 = new Player("张三");
Player p2 = new Player("李四");
for (int i = 0; isum; i++) {
//根据总局数进行pk
int result = pk(p1, p2);
if (result == 1) {
resultArray[0]++;
} else if (result == -1) {
resultArray[1]++;
} else {
resultArray[2]++;
}
}
System.out.println("");
System.out.println("最终结果统计:");
System.out.println("选手[" + p1.getPlayerName() + "]获胜局数为:" + resultArray[0] + ",胜率为:" +
new BigDecimal(resultArray[0]).multiply(new BigDecimal(100).divide(new BigDecimal(sum), 2, BigDecimal.ROUND_HALF_UP)) + "%");
System.out.println("选手[" + p2.getPlayerName() + "]获胜局数为:" + resultArray[1] + ",胜率为:" +
new BigDecimal(resultArray[1]).multiply(new BigDecimal(100).divide(new BigDecimal(sum), 2, BigDecimal.ROUND_HALF_UP)) + "%");
System.out.println("平局局数为:" + resultArray[2] + ",平局率为:" +
new BigDecimal(resultArray[2]).multiply(new BigDecimal(100).divide(new BigDecimal(sum), 2, BigDecimal.ROUND_HALF_UP)) + "%");
}
//0-石头 1-剪刀 2-布
//return 0:平局 1:p1获胜 -1:p2获胜
private static int pk(Player p1, Player p2) {

推荐阅读