java list随机抽取元素的案例
我就废话不多说了,大家还是直接看代码吧~
/** * 从list中随机抽取元素 * * @param list * @param n * @return void * @throws * @Title: createRandomList * @Description: TODO */ private static List createRandomList(List list, int n) { // TODO Auto-generated method stub Map map = new HashMap(); List listNew = new ArrayList(); if (list.size() <= n) { return list; } else { while (map.size() < n) { int random = (int) (Math.random() * list.size()); if (!map.containsKey(random)) { map.put(random, ""); System.out.println(random + "===========" + list.get(random)); listNew.add(list.get(random)); } } return listNew; } }
扩展:
截取list
list.subList(0, 2);
补充知识:java list随机打乱顺序
通过 Collections.shuffle(list)来打乱顺序
List<String> list = new ArrayList<String>(); list.add("mjb"); list.add("hh"); list.add("lw"); list.add("pqj"); list.add("hj"); System.out.println("前:"); for(int i=0;i<list.size();i++){ System.out.print(list.get(i)+" "); } System.out.println(""); System.out.println("后:"); Collections.shuffle(list); for(int i=0;i<list.size();i++){ System.out.print(list.get(i)+" "); }
以上这篇java list随机抽取元素的案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Java对List进行排序的两种实现方法
前言 Java.util包中的List接口继承了Collection接口,用来存放对象集合,所以对这些对象进行排序的时候,要么让对象类自己实现同类对象的比较,要么借助比较器进行比较排序. 学生实体类,包含姓名和年龄属性,比较时先按姓名升序排序,如果姓名相同则按年龄升序排序. 第一种:实体类自己实现比较 (实现comparable接口:public interface Comparable<T> ,里面就一个方法声明:public int compareTo(T o); ) 示例代码: publ
-
java实现把一个List集合拆分成多个的操作
有些时候我们需要对一批数据进行分批处理, 使用subList方法可以实现对List集合进行固定长度的分割. /* * List分割 */ public static List<List<String>> groupList(List<String> list) { List<List<String>> listGroup = new ArrayList<List<String>>(); int listSize = lis
-
java中List对象排序通用方法
本文实例讲述了java中List对象排序通用方法.分享给大家供大家参考.具体分析如下: 在数据库中查出来的列表list中,往往需要对不同的字段重新排序,一般的做法都是使用排序的字段,重新到数据库中查询.如果不到数据库查询,直接在第一次查出来的list中排序,无疑会提高系统的性能. 只要把第一次查出来的结果存放在session中,就可以对list重新排序了.一般对list排序可以使用Collections.sort(list),但如果list中包含是一个对象的话,这种方法还是行不通的.那要怎么排序
-
详解Java 集合类 List 的那些坑
现在的一些高级编程语言都会提供各种开箱即用的数据结构的实现,像 Java 编程语言的集合框架中就提供了各种实现,集合类包含 Map 和 Collection 两个大类,其中 Collection 下面的 List 列表是我们经常使用的集合类之一,很多的业务代码都离不开它,今天就来看看 List 列表的一些坑. 第一个坑:Arrays.asList 方法返回的 List 不支持增加.删除操作 例如我们执行以下代码: List<String> strings = Arrays.asList(&qu
-
java list随机抽取元素的案例
我就废话不多说了,大家还是直接看代码吧~ /** * 从list中随机抽取元素 * * @param list * @param n * @return void * @throws * @Title: createRandomList * @Description: TODO */ private static List createRandomList(List list, int n) { // TODO Auto-generated method stub Map map = new H
-
java实现随机抽取奖品工具类
本文实例为大家分享了java实现随机抽取奖品工具类的具体代码,供大家参考,具体内容如下 随机抽取奖品 整体思路: 1.奖品集合 + 概率比例集合 2.将奖品按集合中的顺序概率计算成所占比例区间,放入比例集合.并产生一个随机数加入其中,进行排序. 3.排序后随机数落在那个区间就表示那个区间的奖品被抽中. 4.返回的随机数在集合中的索引,该索引就是奖品集合的中的索引. 5.比例区间的计算通过概率相加获得. //奖品的实体类 public class Gift { private String id;
-
java+sql2005 随机抽取试题的代码
复制代码 代码如下: import java.awt.BorderLayout; import java.util.*; import java.awt.event.*; import java.awt.Container; import java.awt.EventQueue; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Stateme
-
Java利用数组随机抽取幸运观众如何实现
编写程序,事先将所有观众姓名输入数组,然后获得数组元素的总数量,最后在数组元素中随机抽取元素的下标,根据抽取的下标获得幸运观众的姓名. 思路如下: 定义输入框的按键事件,使用KeyEvent类的getKeyChar()函数判断其是否是回车字符,若不是则不作处理:使用isEmpty()函数判断文本框中是否有字符串,如果没有字符串则不做处理:若为合法输入则通过JTextArea类的append()方法把输入人名与回车符添加到人员列表:使用selectAll()方法选择文本框所有字符:定义点击"抽取&
-
java利用数组随机抽取幸运观众
本文实例为大家分享了java利用数组随机抽取幸运观众的具体代码,供大家参考,具体内容如下 思想: 首先将所有观众姓名生成数组,然后获取数组元素的总数量,再在数组元素中随机抽取元素的下标,根据元素的下标得到幸运观众的名字. import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.E
-
java编写一个花名随机抽取器的实现示例
一.程序效果 还记得以前上课的时候,老师会用自己写的一个抽取器抽取同学回答问题,当时想着我也要做一个,假期没事干,自学了java,闲来无聊,我也写一个,但是写的没有老师好,哈哈,好了说一下思路,先把界面布置好,然后逐一实现每个按钮的功能,其实也没什么难的. 二.需要用到的包 import java.awt.*; import javax.swing.*; import java.awt.event.*; import java.io.*; import java.util.*; 三.代码 1.相
-
php从数组中随机抽取一些元素的代码
复制代码 代码如下: <?php class getValues { public function inputValue($inputArray) { $this->inputArray = $inputArray; } public function getValue($number) { $this->number = $number; for($i = 0; $i < $this->number; $i ++) { $index = rand ( 0, count (
-
java Arrays快速打印数组的数据元素列表案例
1.Arrays.toString 用来快速打印一维数组的数据元素列表 2.Arrays.deepToString 快速打印一个二维数组的数据元素列表 public static strictfp void main(String[] args) { String[][] arr = {{"aaa","bbb"},{"ccc"}}; for(int x=0;x<arr.length;x++){ for(int y=0;y<arr[x]
-
Java权重随机的实现方法
本文实例讲述了Java权重随机的实现方法.分享给大家供大家参考.具体分析如下: 权重随机在项目中经常用到,所以我把它抽象到一个工具类中. 一般实现随机权重有两种方式: 1. 使用一个数组存放权重对应的实际目标,比如A的权重是2,B的权重是3,那么数组长度为5, 数组前两个存放A,后三个存放B. 然后随机一个[0-数据长度)的数字,直接取数组对应下标的值就可以了. 优点:数据结构简单,算法高效,实现简单 缺点:当权重值比较大同时数据又比较多的时候,会浪费内存 2. 使用区间算法,从前到后依次叠加权
-
java 实现随机数组输出及求和实例详解
java 实现随机数组输出及求和 问题描述: 随机生成10个数,填充一个数组,然后用消息框显示数组内容,接着计算数组元素的和,将结果也显示在消息框中. 设计思路: 使用java.util中的Random类来获取随机数,存入数组后,定义一个String类的对象result,利用for循环存储要输出的数组内容到result并且求和:再利用javax.swing中的JoptionPane类创建消息框进行结果输出. 源代码: import java.util.*; import javax.swing.
随机推荐
- Linux ls命令参数详解
- Bootstrap CSS组件之面包屑导航(breadcrumb)
- javascript实现根据iphone屏幕方向调用不同样式表的方法
- php数据结构与算法(PHP描述) 查找与二分法查找
- mysql存储过程 游标 循环使用介绍
- 解析mysql不重复字段值求和
- 不要轻信 PHP_SELF的安全问题
- jsp之间传参数接受中文有乱码问题解决方法
- VBS教程:方法-Replace 方法
- NPOINT免费虚拟主机管理系统windows2003的安装方法【图文】第1/2页
- 错误代码:1100 Table 't_depart_info' was not locked with LOCK TABLES的解决方法
- jQuery统计指定子元素数量的方法
- 各浏览器对link标签onload/onreadystatechange事件支持的差异分析
- 远程如何启用Win 2003桌面
- linux zip/unzip命令详解
- 浅谈linux下的串口通讯开发
- java反射之通过反射了解集合泛型的本质(详解)
- 实战MySQL升级的最佳方法
- 解决idea不支持SpringBoot yml文件的图文教程
- 总结Python图形用户界面和游戏开发知识点