「随机抽签java」随机抽签的小程序

博主:adminadmin 2022-11-28 09:59:09 44

今天给各位分享随机抽签java的知识,其中也会对随机抽签的小程序进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

怎么样编写一个抽签程序?全班30人名字输进去 以后每次点一下就可以随机抽出一个人

Java比较方便。在java.util包里有个Random类。

你把名字放在数组里。

然后用Random对象随机生成整型的数组下标就好了。

跪求java随机抽签示例

public static void main(String[] args) {

Random random=new Random();

int number=random.nextInt(49)+1;

System.out.println(number);

}

JAVA抽签程序!

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.ArrayList;

import java.util.regex.Pattern;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTextArea;

import javax.swing.JTextField;

class People

{

private String name;

private int id;

public People(String name)

{

this.name = name;

}

public void setID(int id)

{

this.id = id;

}

public String getName()

{

return name;

}

public int getId()

{

return id;

}

}

public class test3 extends JPanel

{

private JTextArea jtText;

private JButton jbOK;

private People[] peoples;

public test3()

{

this.setLayout(new GridLayout(1, 2));

jtText = new JTextArea();

this.add(jtText);

jbOK = new JButton("抽签");

this.add(jbOK);

jbOK.addActionListener(new ActionListener()

{

@Override

public void actionPerformed(ActionEvent e)

{

// TODO Auto-generated method stub

String[] names = jtText.getText().split("\n");

int count = Integer.parseInt(names[0]);

peoples = new People[count];

boolean[] hasVisited = new boolean[count + 1];

for(int i = 0 ; i  count ; i++)

{

peoples[i] = new People(names[i+1]);

int r;

while(true)

{

r = (int)(Math.random() * count) + 1;

if(!hasVisited[r])

{

peoples[i].setID(r);

hasVisited[r] = true;

break;

}

}

}

String text = "";

for(int i = 0 ; i  count ; i++)

{

text += peoples[i].getName();

text += "    ";

text += peoples[i].getId();

text += "\n";

}

jtText.setText(text);

}

});

}

public static void main(String[] args)

{

test3 panel = new test3();

JFrame frame = new JFrame();

frame.add(panel);

frame.setSize(300,300);

frame.setVisible(true);

}

}

java 随机数抽签

正常来讲,你使用Math.random()方法就能产生一个随机数的。

如果每次产生的随机数是一样的,你可以用

Random r = new Random();

int a = r.nextInt();来产生一个随机数的。

Random也是随机数的对象。

你可以查一下java的api做一个全面的了解。

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

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 VectorInteger num=new VectorInteger();

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;inum.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;iindex;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

}

}

JAVA抽签小程序

您好:package test;import java.util.HashSet;

import java.util.Set;

import java.util.Iterator;public class test {

public static void main(String[] args) {

Set set = new HashSet();

for (int i = 1; i = 100; i++) {

set.add(i);

}

Iterator it = set.iterator();

for (int i = 0; i set.size(); i++) {

if(it.hasNext()){

System.out.println(it.next());

}

}

}

}先把100放入set然后再随即找出来。另外一个想法是随即产生数,放入list中判断是否重复,这样也达到这样的效果。

随机抽签java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于随机抽签的小程序、随机抽签java的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-28,除非注明,否则均为首码项目网原创文章,转载请注明出处。