我刚刚学JAVA,写了一个不知道算不算游戏的游戏,请高手指点并帮助改进

hellosjz 2006-03-20 07:17:55
//比较大小的游戏,人工输入一个0~9的数字,电脑将给予一个0~9的随机数字,然后相比较!
import java.io.*;
class Gb
{
static String inputline;
static int t=0;
//电脑根据此算法给出0~9的随机数
static int suiji()
{ double n;
int a;
n=Math.random();
a=(int)(n*100)%10;
return a;
}

//主函数
public static void main(String[] args)
{
int temp=0;
int choice=-1;
int i=0/*胜利的局数*/,j=0/*输的局数*/,b=0/*平局的局数*/,k=0/*总局数*/;
System.out.println();
System.out.println(" 这是一个比较大小的游戏,输入10程序退出!,请输入一个0~9的数字,然后敲回车:");
System.out.println(" ========================================================================");
while(choice!=10)
{
try
{
System.out.println();
System.out.println();
System.out.print("您输入的数字是:");
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
inputline=in.readLine();
t=Integer.valueOf(inputline).intValue();
if(t==10)
{
choice=10;
System.out.println("游戏结束,欢迎下次继续!");
return;
}
else if(t>9&&t!=10)
{
System.out.println("您输入的数字不正确,请输入一个0~9的数字!");
continue;
}

temp=suiji();
System.out.print("电脑的数字是:");
System.out.println(temp);
}
catch(Exception e)
{
System.out.println("您输入的数据不正确,请输入一个0~9的数字!");
continue;
}
if(temp>t)
{
System.out.println(" :( YOU LOST!");
j++;
}
else if(temp==t)
{
System.out.println(" -_-| 平局!");
b++;
}
else
{
System.out.println(" :) YOU WIN!");
i++;
}
k=i+j+b;
System.out.print("共进行游戏"+k+"次 ");
System.out.print("您赢了"+i+"次 ");
System.out.println("电脑赢了"+j+"次 ");
System.out.println("平局"+b+"次!");
}
}
}
...全文
140 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
scottwhb 2006-03-21
  • 打赏
  • 举报
回复
System.out.println()太多,可以封装成一个private的Method.
hellosjz 2006-03-21
  • 打赏
  • 举报
回复
感谢,我感觉那个一次可以修改的就没有必要再封装了,不知道说的对不对,呵呵,接触时间不长,仍然感谢!!!
f_acme 2006-03-21
  • 打赏
  • 举报
回复
一切使用面向对象的方法,不要“用面向对象的皮,包结构化编程的馅”!
从一开始就利用面向对象的思想好一点,呵呵~不过本人也是对象思想不强,有个时候就觉得写的代码一点组织性也没有,很不符合重用的思想。
liang8305 2006-03-20
  • 打赏
  • 举报
回复
不错不错,我也是初学者呢....

不过还是想提一个意见:
楼主这个代码,不像是面向对象的思想,而是面向过程....
main方法中所要做的事情太多了....
把其中的一些进行分类,然后在类中定义一些方法,把这些代码写到方法中吧...

例如:
System.out.println();
System.out.println(" 这是一个比较大小的游戏,输入10程序退出!,请输入一 个0~9的数字,然后敲回车:");
System.out.println(" ==========");

这三行println,你可以在类中定义一个introduce()方法,发这三行代码包括其中,然后再在main方法中调用它....

thinking in java 中有一句话,java编程就是定义类,并构建这个类的对象,以及给这个对象发送消息....


zouqiang122 2006-03-20
  • 打赏
  • 举报
回复
帮你顶!!!

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧