java guess_Guess.java

package work;

import javax.swing.*;

import java.awt.event.*;

import java.util.*;

public class Guess extends JFrame implements ActionListener { //Guess继承JFrame类,继承 ActionListener接口;

private JLabel userlabel; //私有属性;

private JTextField usertext;

private Random random = new Random(); //调用Ramdom()方法,获取随机数;

public int m=(int)(Math.random()*100)+1;

public int n = 1;

public Guess() { //猜数游戏函数;

setTitle("GuessGame"); //设置文本框内容;

setLocation(500,400);

System.out.println("程序随机分配的值为:"+m);

getContentPane().setLayout(null);

userlabel = new JLabel("请输入一个猜想数(1-100):");

userlabel.setBounds(20, 20, 180, 40);//移动组件并调整其大小。由 x 和 y 指定左上角的新位置,由 width 和 height 指定新的大小。

usertext = new JTextField(10);

usertext.setBounds(100, 50, 150, 40);

getContentPane().add(userlabel); // contentPane 对象;

getContentPane().add(usertext);

usertext.addActionListener(this); // 添加指定的操作侦听器以从此文本字段接收操作事件;

setSize(350, 200); //设置大小;

setVisible(true);

//添加的代码

setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

save.saveMandN(m, n);

System.exit(0);

}

});

}

public void actionPerformed(ActionEvent e) { //游戏内容;

int text = Integer.parseInt(usertext.getText());

if (n != 10) { //10次及以下;

if (text == m) {//当用户猜对时,根据所用次数不同,显示不同内容;

if(n == 1){

JOptionPane.showMessageDialog(null,n+"次就猜对了,你太有才了! 优秀");

save.saveMandN(m, n);

System.exit(0);

}

else if((n >=2) && (n<=6)){

JOptionPane.showMessageDialog(null,"猜了" + n +"次猜出来了,还不错哦! 良好");

save.saveMandN(m, n);

System.exit(0);

}

else if(n >6){

JOptionPane.showMessageDialog(null,"猜了" + n +"次才猜出来,尚需努力啊!合格");

save.saveMandN(m, n);

System.exit(0);

}

}

else if(text<1 || text>100)

JOptionPane.showMessageDialog(null, "输入数字非法哦!请重新输入一个1~100之间的数。");

else if (text < m) //对用户输入数据的提醒;

JOptionPane.showMessageDialog(null, "很遗憾!偏小了,请重新再猜。");

else if (text > m)

JOptionPane.showMessageDialog(null, "很遗憾!偏大了,请重新再猜。");

n++;

} else{

JOptionPane.showMessageDialog(null, "10次都猜不出来...,哼o( ̄ヘ ̄o#)不让你猜了"); //超过十次,自动结束游戏;

save.saveMandN(m, n);

System.exit(0);

}

}

public static void main(String[] args) {

Guess mathgame = new Guess();

mathgame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值