java课程设计算术游戏

package com.project2.test;


    
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.util.*;
     
    import javax.swing.*;
    import javax.swing.plaf.SliderUI;
    public class Matchs {
            //JPanel 面板  JLable  标签
            JFrame jf=new JFrame();
            JPanel jp=new JPanel();//创建面板
            JLabel jl=new JLabel(); //显示题目
            JLabel jl2=new JLabel(); //显示结果正确与否
            JButton jb=new JButton("提交");//创建提交按钮
            JButton jb2=new JButton("next");//创建next按钮
            JTextField jtf=new JTextField();//输入答案
             
           private int num1,num2;//存放两个随机数
           private int sum=0, score=0,count=0;
           private int judge;//用于存放判断加或者减的数
             
        public Matchs(){
            //界面初始化 
            jf.setSize(500,300);//尺寸大小
            jf.add(jp);
            jp.setLayout(null);
            jp.add(jl);
            jl.setBounds(18,18,100,10); //调整位置,大小
            jp.add(jtf);
            jtf.setBounds(120,10,40,20);//给输入答案设置大小
            jp.add(jb);
            jb.setBounds(10,50,60,40);//给提交按钮设置大小
            jp.add(jb2);
            jb2.setBounds(80,50,60,40);//给next按钮设置大小
            jp.add(jl2);
            jl2.setBounds(60,100,200,50);//给显示答案窗口设置大小
            jf.setVisible(true);//数据模型已经构造好了,允许JAM执行
            jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//设置用户在此窗体上发起关闭
            }
             
        public void produce(){
            Random rand=new Random();//产生随机数的方法
            num1=(int)(Math.random()*100);
            num2=(int)(Math.random()*100);//产生两个随机数
            sum=0;//存放两个数之和
             
            judge=(int)(Math.random()*10)%2;//给judge产生随机数
            if (judge==0) //如果judge为0,进行加法运算
            {
              jl.setText("第"+(count)+"题:"+num1+"+"+num2+"=");//设置组件上的文字内容
              count++;
              sum = num1+num2;
            } 
            else//如果judge为0,进行减法运算 
            {
              count++;
              jl.setText("第"+(count)+"题:"+num1+"-"+num2+"=");
              sum =num1-num2;
            }
        //swing中在进行一个操作的时候触发某项功能,给按钮增加监听事件,对特定的内容进行操作
            
        jb.addActionListener(new ActionListener(){
            //用于接收操作时间的倾听器窗口,发生操作时,调用对象的actionPerformed方法
          public void actionPerformed(ActionEvent e){
            int s=Integer.parseInt(jtf.getText());
            //与正确答案作对比
            if(s==sum)
            {
               jl2.setText("您的回答正确!");
               score+=10;
            }
            else
            {
               jl2.setText("很遗憾,您的回答错误!"+"正确答案:"+sum);
            }
          }
        }
        );
        jb2.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e){
            if(count==10)
            {
               JOptionPane j=new JOptionPane();
               j.showMessageDialog(jf,"最终成绩为"+score);//弹出对话框的消息
               jf.setVisible(false);//隐藏一个组件
            }
            Random rand=new Random();
            num1=(int)(Math.random()*100);
            num2=(int)(Math.random()*100);
            sum=0;
            judge=(int)(Math.random()*10)%2;
            if(judge==0){
               count++;
               jl.setText("第"+(count)+"题:"+num1+"+"+num2+"=");
               sum=num1+num2;
            } 
            else 
            {
               count++;
               jl.setText("第"+(count)+"题:"+num1+"-"+num2+"=");
               sum=num1-num2;
             }
           }
          }
        );     
        }
        public static void main(String args[]) {
            Matchs subject=new Matchs();
            subject.produce();
            }
        }


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值