问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求一个分组抽签程序,谢谢了,java

发布网友 发布时间:2022-05-20 13:00

我来回答

2个回答

热心网友 时间:2023-10-22 07:17

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.Random;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class Ballot extends JFrame implements ActionListener,KeyListener{

//窗口组建,成员变量
JTextArea _txt;
JButton _ballot;
JTextField _print;
JScrollPane _panel;
int n_o_p;
int index;
int _index;
String[] names;
static Vector<Integer> num=new Vector<Integer>();
static Random r=new Random();
//
boolean num_print=true;
public static void main(String[] args) {

new Ballot();
}
public Ballot()
{
n_o_p=0;
index=0;
_index=0;
_txt=new JTextArea();
_txt.setText("请在上面输入人数,按Enter结束!");
_txt.setEditable(false);
_panel=new JScrollPane(_txt);
_ballot=new JButton("抽签");
_print=new JTextField(10);
this.setLayout(new BorderLayout());
this.add(_panel,BorderLayout.CENTER);
this.add(_print,BorderLayout.NORTH);
this.add(_ballot,BorderLayout.SOUTH);
_print.addKeyListener(this);
_ballot.addActionListener(this);
this.setVisible(true);
this.setSize(new Dimension(400,200));
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==_ballot)
{
if(index==n_o_p&&_index!=index)
{
boolean _b=true;
while(_b)
{
int _i=r.nextInt(index);
for(int i=0;i<num.size();i++)
{
if(_i==num.get(i))
{
num.remove(i);
_txt.append("\r\n序号"+_i+" 姓名:"+names[_index]);
_index++;
_b=false;
}
}
}
}
if(_index==index)
{
File f=new File(System.getProperty("user.dir")+"/Save.txt");
if(f.exists())
{

try {
OutputStreamWriter ow=new OutputStreamWriter(new FileOutputStream(f));
ow.write(_txt.getText());
ow.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

}else
{
try {
f.createNewFile();
OutputStreamWriter ow=new OutputStreamWriter(new FileOutputStream(f));
ow.write(_txt.getText());
ow.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}finally
{
_txt.setText("信息以保存至"+f.getPath()+"下!");
}
}
}
}
}
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub

if(e.getKeyCode()==KeyEvent.VK_ENTER)
{

if(num_print){
if(_print.getText().matches("[0-9]+"))
{
num_print=false;
n_o_p=Integer.parseInt(_print.getText());
names=new String[n_o_p];
_print.setText("");
_txt.setText("还需要输入"+n_o_p+"个人名!按回车完成单个人名输入!");
}else
{
_txt.setText("输入的人数非法!请重新输入!");
}
}else
{
if(_print.getText()!=null&&!_print.getText().equals("")&&index!=n_o_p)
{

names[index]=_print.getText();
index++;
_txt.setText("还需要输入"+(n_o_p-index)+"个人名!按回车完成单个人名输入!");

}

}
if(index==n_o_p)
{

for(int i=0;i<index;i++)
{
num.add(i);
}

_txt.setText("请点击按钮进行抽签!");
}
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub

}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub

}

}

热心网友 时间:2023-10-22 07:18

请把需求写详细些追问有N队参加比赛,求一个可以对N队进行分组的程序

追答分组有什么要求吗?还是随便分,比如所有人都在A组?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
镇海立人中学好吗 镇海立人中学升学率 自考学位申请在什么时候 电子科大自考本科申请学士学位要多久 浙江自考毕业两年后还能考学士学位吗 自考学士学位申请超过时限怎么办 自考本科毕业后多久能申请学士学位 自考本科毕业后多久能申请学位 自考要在几年内考完才能申请学位证 春天可以种白菜吗 春天能不能种白菜 求C语言分组程序 C++分组程序,急,在线等 怎样去办理村民分组程序? 《西游记》电视剧中,宝象国 那集剧情 北方家里需要买烘干机吗?烘干机有什么好处吗? 梦幻西游宝象国剧情怎么取消 盘点中国婚礼和美国婚礼的区别 谁可以给我几张中式婚礼的照片啊,花钱买也行! 8.8.3.3算24 8,3,3,7,24点怎么算 计算24点 四个数字:3.3.8.8.如何列一个等式等于24 算24点 用3.3.8.8四个数通过加减乘除算出24 益智乐园3.3.8.8.怎样算等24 怎么样用3.3.8.8四个数字算出24? 3.3.8.8做加减乘除算24点,怎么算啊? 3.3.8.8.怎么算24点啊? 用3.3.8.8四个数字,只能用加减乘除,算出24来 用3.3.8.8加减乘除算成24 3.3.8.8,怎么算结过得出24? 用C语言编写一个关于成绩分组的程序 一个根据奇数偶数分组的程序问题。 请问哈,白猫集团 上海和黄白猫有限公司 上海白猫集团有限公司 上海白猫股份有限公司 有什么区别? 上海白猫正冠化工有限公司怎么样? 上海白猫公司与联合利华公司是什么关系? 上海白猫股份有限公司的经营范围 上海白猫(集团)有限公司怎么样? 白猫爽身粉是不是换配方了?味道怎么不一样 上海和黄白猫有限公司的技术优势 白猫洗洁精是哪个工厂生产的 请问上海白猫品牌到底是联合利华还是和记黄埔的?? 请问白猫洗衣粉是我国哪个地方、哪个公司的牌子? 上海白猫集团怎么样? 上海和黄白猫有限公司怎么样? 卓度燃气表怎么蓝牙充值 上海市嘉定区江桥这边有没有自助的IC卡燃气充值的地方啊,怎么充值的 小学六年级语文上册如何珍惜资源 一加五t与小米mix2s哪个更值得买? mchange快充能否使用移动电源 魅族手机的开发者选项里多了一个这个功能(开关mChange快充功能)请问有什么用