当前位置: 首页 > news >正文

自动点名器

班级里有N个学生,实现随机点名器

package MyApi.a00test;import java.util.ArrayList;
import java.util.Collections;
import java.util.Random;public class Test1 {public static void main(String[] args) {ArrayList<String> list=new ArrayList<>();Collections.addAll(list,"范闲","范建","范统","杜子腾","王俊凯");//随机点名//第一种/*   Random r=new Random();int index=r.nextInt(list.size());String name= list.get(index);System.out.println(name);*///第二种Collections.shuffle(list);String name=list.get(0);System.out.println(name);}
}

班级里面有N个学生

要求:70%的概率随机到男生,30%的概率随机到女生

package MyApi.a00test;import java.util.ArrayList;
import java.util.Collections;
import java.util.Random;public class Test2 {public static void main(String[] args) {ArrayList<Integer> list=new ArrayList<>();Collections.addAll(list,1,1,1,1,1,1,1);Collections.addAll(list,0,0,0);Collections.shuffle(list);Random r=new Random();int index = r.nextInt(list.size());Integer number = list.get(index);System.out.println(number);ArrayList<String>  boylist=new ArrayList<>();ArrayList<String>  girllist=new ArrayList<>();Collections.addAll(boylist,"王俊凯","王源","易烊千玺","夏之光","黄俊捷","肖战","王一博");Collections.addAll(girllist,"杨幂","迪丽热巴","娜扎");if(number==1){int boyindex = r.nextInt(boylist.size());String boyname = boylist.get(boyindex);System.out.println(boyname);}else {int girlindex = r.nextInt(girllist.size());String girlname= boylist.get(girlindex);System.out.println(girlname);}}
}

要求:

被点到的学生不会在被点到,但是如果班级中所有的学生都点完了,需要重新开启第二轮点名

package MyApi.a00test;import java.util.ArrayList;
import java.util.Collections;
import java.util.Random;public class Test3 {public static void main(String[] args) {ArrayList<String> list=new ArrayList<>();Collections.addAll(list,"王俊凯","王源","易烊千玺","夏之光","黄俊捷","肖战","王一博","杨幂","迪丽热巴","娜扎");//创建一个临时的集合,用来存储已经被点到名字的学生ArrayList<String> list2=new ArrayList<>();for (int i = 0; i < 10; i++) {int count= list.size();Random r=new Random();for (int j = 0; j < count; i++) {int index = r.nextInt(list.size());/* String name = list.get(index);list.remove(name);*/String name = list.remove(index);list2.add(name);System.out.println(name);}//此时表示一轮集合已经结束list.addAll(list2);list2.clear();}}
}

相关文章:

  • RockChip Android13 修改U盘挂载目录
  • 【Javaweb】【瑞吉外卖】上传下载实现
  • 使用 Jenkins 管道在 Docker Hub 中构建 Docker 镜像
  • 鸿蒙原生应用再添一批新丁!阿里旗下11款应用、广汽传祺、岚图汽车、零跑汽车、凯翼汽车 入局鸿蒙
  • ES6(三):Iterator、Generator、类的用法、类的继承
  • Kubernetes(k8s第四部分之servers)
  • Hadoop大数据应用:Linux 部署 MapReduce 与 Yarn
  • C语言例:表达式(a=2,3),a+1的值
  • WordPress供求插件API文档:获取市场类型
  • 【Git】error: bad signature 0xb86f1e1 和 bfatal: index file corrupt
  • 数字人解决方案——Wav2lip语音驱动唇部动作的技术原理(附整合包下载)
  • JVM相关
  • BERT:深度学习领域中的语言理解利器
  • 开发知识点-python-Tornado框架
  • 如何使用第三方接入淘宝商品详情(主图,详情图)
  • CentOS从零开始部署Nodejs项目
  •  D - 粉碎叛乱F - 其他起义
  • Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
  • ES10 特性的完整指南
  • js面向对象
  • KMP算法及优化
  • Laravel 菜鸟晋级之路
  • LeetCode18.四数之和 JavaScript
  • PHP CLI应用的调试原理
  • SAP云平台里Global Account和Sub Account的关系
  • Vue 重置组件到初始状态
  • vuex 学习笔记 01
  • WePY 在小程序性能调优上做出的探究
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 力扣(LeetCode)21
  • 判断客户端类型,Android,iOS,PC
  • 前端存储 - localStorage
  • 前端每日实战 2018 年 7 月份项目汇总(共 29 个项目)
  • 我感觉这是史上最牛的防sql注入方法类
  • 责任链模式的两种实现
  • 终端用户监控:真实用户监控还是模拟监控?
  • 白色的风信子
  • ​如何防止网络攻击?
  • #ifdef 的技巧用法
  • #Spring-boot高级
  • #Z0458. 树的中心2
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (27)4.8 习题课
  • (Forward) Music Player: From UI Proposal to Code
  • (独孤九剑)--文件系统
  • (二)Linux——Linux常用指令
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (一)RocketMQ初步认识
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (转) Face-Resources
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功