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

http://www.cnblogs.com/springbreezemiles/p/7064135.html

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

本人任务: 编写主界面以及排行榜代码,玩家信息的储存,排行榜界面设计。

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

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

界面设计:



排行榜部分代码:

按照玩家的猜对次数进行排名,次数越少排名越高

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 spring
*/
public class Rank extends javax.swing.JFrame {
private ArrayList<User> arrayList;
/**
* Creates new form paihang
* @throws FileNotFoundException
*/
public Rank() throws FileNotFoundException {
initComponents();
arrayList = new ArrayList<>();
File datafile = new File("D:\\rankdata.txt");
Scanner scanner = new Scanner(new FileInputStream(datafile));
while (scanner.hasNextLine()) {
String string = scanner.nextLine();
String[] strings = string.split(" ");
String name = strings[0];
int count = Integer.parseInt(strings[1]);
User user = new User(name, count);
arrayList.add(user);
} Collections.sort(arrayList, new UserComparator()); for (int i = 0; i < arrayList.size(); i++) {
String username = arrayList.get(i).getUsername();
String count = arrayList.get(i).getCount() + "";
if (i == 0) {
jLabel5.setText(username);
jLabel10.setText(count); } else if (i == 1) {
jLabel8.setText(username);
jLabel11.setText(count);
} else if (i == 2) {
jLabel7.setText(username);
jLabel12.setText(count);
} else {
break;
}
} scanner.close(); }

玩家输入姓名界面

import java.io.BufferedWriter;
import java.io.DataOutput;
import java.io.DataOutputStream;
import java.io.FileWriter;
import java.io.IOException; import javax.swing.JFrame; /**
*
* @author spring
*/
public class Username extends javax.swing.JFrame { /**
* Creates new form usernanme
*/
private int count; public Username(int count) {
this.count = count;
initComponents(); } /**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() { jLabel1 = new javax.swing.JLabel();
y = new javax.swing.JTextField();
jButton1 = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jLabel1.setText("答对了,请输入你的姓名"); y.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
yActionPerformed(evt);
}
}); jButton1.setText("确定");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
try {
jButton1ActionPerformed(evt);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup().addGap(44, 44, 44)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(y, javax.swing.GroupLayout.PREFERRED_SIZE, 210,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 177,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(146, Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jButton1).addGap(43, 43, 43)));
layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup().addContainerGap().addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(y, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jButton1)
.addContainerGap(15, Short.MAX_VALUE))); pack();
}// </editor-fold> private void yActionPerformed(java.awt.event.ActionEvent evt) {
username = y.getText(); // TODO add your handling code here:
} private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) throws IOException {
// TODO add your handling code here:
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("D:\\rankdata.txt", true)); String name = y.getText();
User user = new User(name, count);
bufferedWriter.write(user.toString()); bufferedWriter.close();
dispose();
} private String username;
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JLabel jLabel1;
private javax.swing.JTextField y;
// End of variables declaration
}

5.课程设计感想

作为组长,不仅仅是负责好自己的模块,更重要的是团队的协调合作。

经过这次课设我对我自己的能力有了深刻的认识,各类代码的应用还不熟练,要能在将来继续认真的学习代码,提高自身水平。

java课程设计——猜数游戏的更多相关文章

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

    Java课程设计--猜数游戏(201521123111 陈伟泽) 1.团队课程设计博客链接 博客作业--猜数游戏 2.个人负责模块或任务说明 Answer:一些基础界面的构造,排行榜的构造,用文件录入 ...

  2. JAVA课程设计 猜数游戏 团队

    团队名称,成员介绍 名称: 猜数游戏 成员: 网络1514 201521123086 周颖强 网络1514 201521123087蒋勃超 项目git地址 git.oschina.net/jbc113 ...

  3. java课程设计-猜数游戏(201521123029 郑佳明)

    1.团队课程设计博客链接 http://www.cnblogs.com/m1ng123/p/7056740.html 2.个人负责模板或任务说明 猜数运行3个主界面即相关功能 玩家信息存储的play类 ...

  4. Java课程设计 猜数游戏团队博客

    1.团队成员介绍(需要有照片) 曾飞远(组长):网络1513 201521123080 江鹭涛(组员):网络1513 201521123075 2. 项目git地址 3. 项目git提交记录截图(要体 ...

  5. java课程设计——猜数游戏个人博客

    1.团队课程设计链接 团队博客:http://www.cnblogs.com/springbreezemiles/p/7064135.html 2.个人负责模块 猜数部分的算法及代码实现. 3.自己的 ...

  6. java课程设计-猜数游戏

    1. 团队名称.团队成员介绍 团队名称:breeze 团队成员 组长:网络1514张朝玮 201521123106 组员:网络1513侯帅军 201521123092 2. 项目git地址 https ...

  7. JAVA课程设计-猜数游戏 201521123017

    1.团队课程设计博客链接 http://www.cnblogs.com/m1ng123/p/7056740.html 2.个人负责模块或任务说明 (1)文件读取和文件的存储 (2)提示板块的窗口设计 ...

  8. Java课程设计 猜数游戏个人博客

    1.团队课程设计博客链接 http://www.cnblogs.com/tt1104/p/7064349.html 2.个人负责模块或任务说明 1.成绩排行榜算法的设计: 2.排行榜存放到文件中, 3 ...

  9. java课程设计 猜数游戏 个人

    1.团队课程设计博客链接 /http://www.cnblogs.com/ohanna/p/7064305.html 2.个人负责模块说明 1.进入界面: 2.成功玩家信息的录入: 3.信息的读出 3 ...

随机推荐

  1. 【leetcode】349. Intersection of Two Arrays

    Given two arrays, write a function to compute their intersection. Example: Given nums1 = [1, 2, 2, 1 ...

  2. uploadify 在chrome上崩溃的解决办法

    使用Uploadify进行文件上传,Chrome经常会报“喔唷,崩溃啦”的错误,见下图: 很显然,这是Chrome浏览器缓存功能,所导致的问题.从LOG里也能看到:正常的情况下,会请求文件(jquer ...

  3. 使用requests模块爬虫

    虽然干技术多年了,但从没有写过博客,想来甚是惭愧,本篇作为我博客的第一篇,也是测试篇.不为写的好,只为博诸君一眸而已. 使用python爬虫,有几个比较常用的,获取html_content的模块url ...

  4. 每个Web开发人员应该知道的12个终端命令

    Tips 原文作者:Danny Markov 原文地址:12 Terminal Commands Every Web Developer Should Know About 终端是开发人员的武器库中最 ...

  5. linux桌面创建快捷方式

    1使用命令行创建桌面快捷方式 要为特定程序或命令创建桌面快捷方式,你可以使用任意文本编辑器创建一个.desktop文件,然后把它放到/usr/share/applications或者~/.local/ ...

  6. Vim入门学习之Vim解析

    Vim解析... ----------------------- 首先你要会从官网上下载你想要的Vim版本:   官网: http://www.vim.org/==================== ...

  7. DOM 对象方法

    DOM 对象方法 这里提供一些您将在本教程中学到的常用方法: 方法 描述 getElementById() 返回带有指定 ID 的元素. getElementsByTagName() 返回包含带有指定 ...

  8. 读书笔记--C陷阱与缺陷(一)

    要参与C语言项目,于是作者只好重拾C语言(之前都是C++,还是C++方便). 看到大家都推荐看看  C陷阱与缺陷(C traps and pitfalls),于是好奇的开始了这本书的读书之旅. 决定将 ...

  9. Python初学——窗口视窗Tkinter

    此篇文章是跟着沫凡小哥的视频学习的,附上学习网址:https://morvanzhou.github.io/tutorials/python-basic/ 什么是 tkinter 窗口1.1 什么是 ...

  10. JSP的getRequestDispatcher()与sendRedirect()的区别

    getRequestDispatcher()与sendRedirect()的区别   1.request.getRequestDispatcher()是请求转发,前后页面共享一个request ; r ...