一、前言

list在日常项目中是使用的非常普遍的,充斥在java项目中的各个角落,所有的java项目都会使用到list集合,这是毋庸置疑的,这里只是浅谈一下list的用途之一——从list中获取随机元素

二、list 简介

  1. list是一个有序的集合(也是被称为序列),和set不一样,list中允许重复元素的存在
  2. list的使用者对元素的插入位置(索引)有着准确的控制,通过索引可以获取元素
  3. list提供了各种方法来方便我们对其中的元素操作
  4. list是java集合框架的一员

三、使用list或者Random随机取出一个元素

直接上代码,这里只是介绍取随机元素的三个用法(运用 list 和 random)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package com.example.demo;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class AllController {

public static void main(String[] args) {
aa();
bb();
cc();
}

/**
* string
*/
public static void aa() {
List<String> list = new ArrayList<>();
list.add("干饭");
list.add("稀粥");
list.add("炒菜");
list.add("面条");
list.add("火锅");
list.add("冒菜");
list.add("麻辣烫");
list.add("烧烤");
Random random = new Random();
int n = random.nextInt(list.size());
String aa = list.get(n);
System.out.println(aa);
}

/**
* integer
*/
public static void bb() {
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
list1.add(4);
list1.add(5);
list1.add(6);
list1.add(7);
list1.add(8);
Random random = new Random();
int n = random.nextInt(list1.size());
Integer bb = list1.get(n);
System.out.println(bb);
}

/**
* 产生0-99/1-100的随机数
*/
public static void cc(){
Random random = new Random();
int ran1 = random.nextInt(100);
int ran2 = random.nextInt(100)+1;
System.out.println(ran1);
System.out.println(ran2);
}

}

看如上代码,三种方法本质上来说都是使用的Random,为啥要加上list呢,是因为我们平时生活中遇到的抽奖或者相似的功能中,基本上都是使用list将可控的值添加进去,再进行随机取出。

五、结语

暂时写到这里,有兴趣的可以自己测一下或者实现一下……