重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

java初学随机点名代码,java初学随机点名代码怎么用

随机点名系统 java

import java.awt.Font;

创新互联建站主营城子河网站建设的网络公司,主营网站建设方案,重庆APP开发公司,城子河h5小程序制作搭建,城子河网站营销推广欢迎城子河等地区企业咨询

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.ArrayList;

import java.util.List;

import java.util.Random;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

public class test_random extends JFrame implements ActionListener{

public static void main(String[] args) {

test_random t = new test_random();

t.init();

}

public void init(){

initListDate();

but = new JButton("开始点名");

but.setBounds(100,150,100,40);

but.addActionListener(this);

label = new JLabel("随机点名");

label.setBounds(60,20,300,40);

label.setFont(new Font("楷体",Font.BOLD,40));

show = new JLabel("");

show.setBounds(110,80,200,30);

show.setFont(new Font("楷体",Font.BOLD,30));

reset = new JButton("重新点名");

reset.setBounds(203,246,90,25);

reset.addActionListener(this);

add(but);

add(label);

add(show);

add(reset);

setLayout(null);

setVisible(true);

setResizable(false);

setBounds(100,100,300,300);

setTitle("点名");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void initListDate(){

//在这个地方添加姓名就可以了

list.add("刘天廷");

list.add("孔老二");

list.add("张三");

list.add("李四");

list.add("王五");

list.add("麻六");

list.add("冯七");

list.add("京八");

list.add("茅台九");

}

public void actionPerformed(ActionEvent e) {

/*确保每人选一次*/

Object obj = e.getSource();

if(obj == but){

if(list.size()==0){

JOptionPane.showMessageDialog(null,"没有人了!");

return ;

}else{

Random ran = new Random();

int num = ran.nextInt(list.size());

show.setText(list.get(num));

list.remove(num);

}

}

if(obj == reset){

show.setText("");

initListDate();

}

}

private JButton but ;

private JLabel label;

private JLabel show;

private JButton reset;

private ListString list = new ArrayListString();

}

javaweb写个随机点名的代码

//首先我们可以先把名字搞成一个数组,或者List都是可以的。

String[] arr = {"张三","李四","王五","xxx"....};

String random = arr[new Random().nextInt(arr.size())];

System.out.println("随机名字为:"+random);

Java随机抽取人名完整代码是什么?

public class test {

public static void main(String[] args) {

//定义人名数组

String [] name = {"张三","李四","王五","八神庵","不知火舞","大蛇","景天","唐雪见","李逍遥","赵灵儿"};

//随机生成数组下标、

int num = (int)(Math.random() * 1000);

//对生成的随机数进行判断,如果小于数组下标,就跳出循环

while (numname.length-1) {

if (num=name.length-1) {

break;

}

num = (int)(Math.random() * 1000);

}

//将数组下标设置成随机数,就可以实现人名的随机抽取

System.out.println(“被抽到的同学是:”+name[num]);

}

}

JAVA编程(随机点名程序),高手来!急!

按照你第2点描述,你仅仅是想实现随即顺序点名而已,并不是随即点名。

我给你个解决方案:

在每次点中一名学生后,将java0803_students.txt文件中做个标示,表示该学生已经在本轮点名中被点过。

直到所有学生都点到后情况这个表示,准备下一轮点名做标记。

下面我给你一段伪代码,包含了 random 的使用方法:

public class CallStudents(){

private static Random random = new Random();

public void call(){

// 重新设置学生被点名的标示(根据点名情况)

reset();

long value = -1;

while (true) {

value = random.nextInt(maxValue + 1); // maxValue 是你当前有学生的最大数目

//在这里读取当前随即号对应的学生记录

String student = getStudentByID(value);

//判断该学生是否被点过名

if(!checkCalled(student)){

// 设置已经点过名

setCalled(student);

// 在控制台上显示被点名的学生信息

system.out.println(student);

// 结束循环

break;

}

}

}

private String getStudentByID(long id){

// 这个是读取文件,需要你自己实现的

// 返回 java0803_students.txt 文件中对应的学生记录

}

private boolean checkCalled(String student){

// 至于是什么样的规则,有你自己定义

// 我这里给你举个例子

// 如果这条学生记录中包含 一个字符为 called 的话,表明这名学生被点过名

if(student.indexOf("called") != -1){

retrn true;

}

return false;

}

private void setCalled(String student){

// 至于是什么样的规则,有你自己定义

// 我这里给你举个例子

// 设置学生已被点名

student += "_called";

// 将这个值重新写回到你的java0803_students.txt 文件中,覆盖愿信息!

}

private void reset(){

// 判断是否所有学生都被点过名,如果点过名,清空所有学生被点名的标记

// 这个实现有你自己定义,

// 这里我给你举个例子

// 读取文件,判断每一个学生信息是否都标有 called

// 如果都有,执行删除所有 called 的操作,并保存文件。

// 如果只有部分没有,则表明本轮点名没有结束,不做任何操作。

}

public static void main(String[] args){

String con = // 接受控制台信息

if(con.equals("y")){

CallStudents call = new CallStudents();

call.call();

}

if(con.equals("n")){

// 结束程序

}

}

}


网页名称:java初学随机点名代码,java初学随机点名代码怎么用
标题链接:http://cqcxhl.cn/article/dsesiso.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP