博客做业--猜数游戏java
Answer:一些基础界面的构造,排行榜的构造,用文件录入用户名和实践,获取时间而后排行。
ide
猜数游戏主界面应该分为三个,开始,退出,以及排行榜模块,开始游戏后要有输入输出界面。当猜中游戏后应该录入玩家名称,同时得到所用的时间,而且对所用的时间进行升序排列,输出前三名。在排行榜界面后应该还有退出按钮。
(1)部分基础界面的构造
使用netbeans进行部分界面的构造,例如排行榜排列的方式,用户名,所用时间以及退出。this
(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到逐步会用,在对排行榜的时候一直翻书,百度,求教。并且时间也相对比较紧迫。不管结果,努力过,有收获就是美好的!3d