import java.util.Random;
import java.util.Scanner;
import java.lang.Integer;
/*
猜数字游戏第三版
改进: 面向对象编程思想有所体现
能够正确的结束游戏
这个程序的编写告一段落
*/
class GuessNumberGame
{
private String io;//玩家输入的字符串
private int number;//玩家猜的数字
private final int random=new Random().nextInt(101);//要猜的数字
private void input(){//输入
Scanner sc=new Scanner(System.in);
io=sc.next();
}
private void changeAndCheck(){//转换成整型,字符串合法性检测
try
{
number=Integer.parseInt(io);
}
catch (NumberFormatException e)
{
System.out.println("字符输入非法!"+'\n'+"请重新输入");
}
}
public boolean reGame(){
this.input();
if (io.equalsIgnoreCase("YES")){
return true;
}else{
System.out.println("*********游戏结束*********");
return false;
}
}
public GuessNumberGame(){//猜数字。我要保证他能调用所有方法。
System.out.println("***********游戏开始***********");
while (true){
this.input();
this.changeAndCheck();
if (number>random){
System.out.println("您输入的数字大了");
}else if (number<random){
System.out.println("您输入的数字小了");
}else{
System.out.println("您输入的数字对极了!^-^");
break;
}
}
System.out.println("输入YES再来一局,输入其余字符退出游戏^~^");
}
}
class Game
{
public static void main(String[] args){
do{
boolean again;
GuessNumberGame gng=new GuessNumberGame();
again=gng.reGame();
if (!again){
break;
}
}
while (true);
}
}
这是自己做的完善的版本,是一边学习屈博老师给的源代码,一边自己写的,第一次做出来。很高兴
猜数字游戏
最新推荐文章于 2018-11-12 22:06:00 发布