zoukankan      html  css  js  c++  java
  • Java课程设计——猜数游戏(201521123111 陈伟泽)

    Java课程设计——猜数游戏(201521123111 陈伟泽)

    1.团队课程设计博客链接

    博客作业--猜数游戏

    2.个人负责模块或任务说明

    Answer:一些基础界面的构造,排行榜的构造,用文件录入用户名和实践,获取时间然后排行。

    3.自己的代码提交记录截图

    4.自己负责模块或任务详细说明

    猜数游戏主界面应该分为三个,开始,退出,以及排行榜模块,开始游戏后要有输入输出界面。当猜中游戏后应该录入玩家名称,同时获得所用的时间,并且对所用的时间进行升序排列,输出前三名。在排行榜界面后应该还有退出按钮。
    

    (1)部分基础界面的构造
    使用netbeans进行部分界面的构造,例如排行榜排列的方式,用户名,所用时间以及退出。

    (2)排行榜的构造
    排行榜的构造应该跟开始游戏的输入和所用的时间有关联,同时应该录入猜中游戏后的用户名,录入文本文件后同时对此进行排序,得出排名。

    package game;
    
    import  java.io 
    
    .File;
    import  java.io 
    
    .FileInputStream;
    import  java.io 
    
    .FileNotFoundException;
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Scanner;
    
    import javax.swing.JFrame;
    
    /**
     *
     * @author Administrator
     */
    public class paihang extends javax.swing.JFrame {
       
    private ArrayList<User> arrayList;
        /**
         * Creates new form paihang
         * @throws FileNotFoundException 
         */
        public paihang() throws FileNotFoundException {    
            initComponents();
            arrayList = new ArrayList<>();
            File datafile = new File("D: \data.txt");
            Scanner scanner = new Scanner(new FileInputStream(datafile));
            while (scanner.hasNextLine()) {
             String string = scanner.nextLine();
             String[] strings = string.split(" ");
             arrayList.add(new User(strings[0], Long.parseLong(strings[1])));
            }
            
            Collections.sort(arrayList);
            
            for (int i = 0; i < arrayList.size(); i++) {
             String username = arrayList.get(i).username;
             String time = arrayList.get(i).time + "";
             if (i == 0) {
             jLabel4.setText(username);
             jLabel7.setText(time);
             } else if (i == 1) {
             jLabel6.setText(username);
             jLabel10.setText(time);
             } else if (i == 2) {
             jLabel5.setText(username);
             jLabel8.setText(time);
             } else {
             break;
             }
            }
    
            scanner.close();
            
        }                      
        private void initComponents() {
    
            label2 = new java.awt.Label();
            label4 = new java.awt.Label();
            label5 = new java.awt.Label();
            jLabel2 = new javax.swing.JLabel();
            jLabel3 = new javax.swing.JLabel();
            T = new javax.swing.JButton();
            jLabel4 = new javax.swing.JLabel();
            jLabel5 = new javax.swing.JLabel();
            jLabel6 = new javax.swing.JLabel();
            jLabel7 = new javax.swing.JLabel();
            jLabel10 = new javax.swing.JLabel();
            jLabel8 = new javax.swing.JLabel();
    
            setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    
            label2.setName("1"); // NOI18N
            label2.setText("1");
    
            label4.setText("2");
    
            label5.setText("3");
    
            jLabel2.setText("姓   名");
    
            jLabel3.setText("时   间");
    
            T.setText("退出");
            T.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    TActionPerformed(evt);
                }
            });
    
            jLabel4.setText("        ");
    
            jLabel7.setText("        ");
     private void TActionPerformed(java.awt.event.ActionEvent evt) {                                  
         GNB G=new GNB();
            G.setVisible(true);    
            this.setVisible(false);
     private javax.swing.JButton T;
        private javax.swing.JLabel jLabel10;
        private javax.swing.JLabel jLabel2;
        private javax.swing.JLabel jLabel3;
        private javax.swing.JLabel jLabel4;
        private javax.swing.JLabel jLabel5;
        private javax.swing.JLabel jLabel6;
        private javax.swing.JLabel jLabel7;
        private javax.swing.JLabel jLabel8;
        private java.awt.Label label2;
        private java.awt.Label label4;
        private java.awt.Label label5;
    
            package game;
    
    public class User implements Comparable<User> {
    String username;
    long time;
    
    public User(String username, long time) {
    this.username = username;
    this.time = time;
    }
    
    @Override
    public String toString() {
    return username + " " + time;
    }
    
    @Override
    public int compareTo(User o) {
    if (time < o.time) {
    return -1;
    } else if (time == o.time) {
    return 0;
    } else {
    return 1;
    }
    }
    }
    

    五、课程设计感想

    作为组长,不仅仅是负责好自己的模块,更重要的是团队的协调合作。分配好各自的任务,在解决任务的时候遇到问题,一起解决是一件很有趣的事情。虽然两个人做的课设相对简单一点,但是对于我们的水平来说也是个不小的挑战,两个人从一点不会使用netbeans到逐步会用,在对排行榜的时候一直翻书,百度,求教。而且时间也相对比较紧迫。无论结果,努力过,有收获就是美好的!

  • 相关阅读:
    886. 求组合数 II(模板)
    885.求组合数 I(模板)
    线性同余方程(同余+扩展欧几里得模板)
    扩展欧几里得(模板)
    乘法逆元(模板)
    求欧拉函数(模板)
    最大公约数(欧几里得算法/辗转相除法)
    求约数之和
    New beginning~
    CSP-S 2019游记
  • 原文地址:https://www.cnblogs.com/yudi/p/7063528.html
Copyright © 2011-2022 走看看