java使用JOptionPane猜数字游戏
更新时间:2020年05月16日 16:05:33 作者:刘璐菲
这篇文章主要为大家详细介绍了java使用JOptionPane猜数字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了java实现猜数字游戏的具体代码,供大家参考,具体内容如下
一、我猜数字
import java.util.Random; import javax.swing.JOptionPane; public class MyRandom { public static void main(String[] args) { //生成随机数 Random randomNumber = new Random(); int myNum = randomNumber.nextInt(10); String guessNum = ""; int guessNumber = 0; //猜对猜错的标识 boolean sign = false; //猜数字的循环 do{ try{ guessNum = JOptionPane.showInputDialog(null,"欢迎来到猜数字游戏!,请输入数字"); guessNumber = Integer.parseInt(guessNum); if(guessNumber > myNum) { JOptionPane.showMessageDialog(null,"猜大了"); } else if(guessNumber < myNum) { JOptionPane.showMessageDialog(null,"猜小了"); } else { sign = true; } }catch(NumberFormatException e){ JOptionPane.showMessageDialog(null,"输入格式错误"); } }while(guessNumber != myNum); if(sign) { JOptionPane.showMessageDialog(null,"恭喜你猜对了!"); } } }
二、电脑猜数字
import javax.swing.JOptionPane; import java.util.ArrayList; import java.util.Random; public class ComRandom { //给猜的数设置一个范围 int low = 0, high = 10; boolean leave = false; public void run() { int myIntNumber = 0; String myNumber; try{ //给电脑一个数让他猜 myNumber = JOptionPane.showInputDialog(null,"给我一个0-10的数字,让我(电脑)来猜"); try{ myIntNumber = Integer.parseInt(myNumber); }catch(NumberFormatException e){ JOptionPane.showMessageDialog(null,"异常"); leave = true; } }catch(NullPointerException e){ JOptionPane.showMessageDialog(null,"拜拜"); } if(!leave){ //电脑随机猜一次,生成一个随机的数字 Random randomGenerator= new Random(); int guessNumber = randomGenerator.nextInt(10); //循环判断电脑猜的数字是大还是小 //定义两个字符串,提示电脑是猜大了还是猜小了。 String output = ""; try{ output = JOptionPane.showInputDialog(null,"是" + guessNumber + "!我猜对了吗?"); while(!output.equals("猜对了")) { if(output.equals("猜大了")) { guessNumber = guessNumber(guessNumber,myIntNumber); } else if(output.equals("猜小了")) { guessNumber = guessNumber(guessNumber, myIntNumber); } else { JOptionPane.showMessageDialog(null,"我没听懂你在说什么..."); } try{ output = JOptionPane.showInputDialog(null,"是" + guessNumber + "!我猜对了吗?"); }catch(NullPointerException e) { JOptionPane.showMessageDialog(null,"异常"); } } }catch(NullPointerException e){ JOptionPane.showMessageDialog(null,"异常"); } } leave = false; } /** * 二分法猜数字 */ private int guessNumber(int guess,int number) { if(guess < number) { //答案是5 我猜的是2 low = guess + 1; } else if(guess > number) { //答案是6我猜的是8 high = guess - 1; } guess = (high + low) / 2; return guess; } }
更多有趣的经典小游戏实现专题,也分享给大家:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Springboot 2.x集成kafka 2.2.0的示例代码
kafka近几年更新非常快,也可以看出kafka在企业中是用的频率越来越高。本文主要为大家介绍了Springboot 2.x集成kafka 2.2.0的示例代码,需要的可以参考一下2022-04-04Spring Boot 配置文件类型properties 格式与yml 格式
这篇文章主要介绍了Spring Boot 配置文件类型properties 格式与yml 格式,文章围绕主题展开详细内容,具有一定的参考价值,需要的小伙伴可以参考一下2022-05-05
最新评论