java 课程设计数字游戏_java课程设计——猜数游戏

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

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

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

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

893c0e3234d652a2340bf567d714df29.png

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

界面设计:

aa9a2298b8bb9ac0bfbca8ee17c8a077.png

ee576877e7d7d9d017bf2b3288416d5d.png

排行榜部分代码:

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

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 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")

//

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();

}//

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.课程设计感想

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

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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值