使用java中Scanner,Randon,ArrayList完成一个随机点名系统

import java.util.*;

public class Test01 {
    public static void main(String[] args) {
        //使用Arrays.asList创建一个固定数组
        List<String> list = Arrays.asList("孙俪", "刘涛", "苗圃", "杨紫","蒋欣","乔欣",
                "谭松韵","宋茜","柳岩","包文婧","唐嫣","杨幂","迪丽热巴","李小冉","梅婷","王心凌");
        //通过构建方法把固定数组的内容添加到新的数组
        ArrayList<String> names = new ArrayList<>(list);
        //获取键盘输入
        Scanner sc = new Scanner(System.in);
        //用于创建随机数
        Random ra = new Random();
        // 采用while死循环
        while (true) {
            System.out.println("输入Y/y开始点名");
            String sum = sc.next();//获取输入数据通过.equals()方法判断
            if (sum.equals("Y") || sum.equals("y")) {
                //通过size()方法获取随机数在数组的索引位置
                int index = ra.nextInt(names.size());
                //通过索引位置获取集合中的内容
                String s = names.get(index);
                System.out.println(s);
                names.remove(index);//通过.remove()方法移除掉已出现的内容
                if (names.size() == 0) {//集合长度为0退出循环
                    System.out.println("点名结束");
                    break;
                }
            } else {
                System.out.println("点名结束");
                break;
            }
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值