精华内容
下载资源
问答
  • 主要介绍了java 查找list中重复数据实例详解的相关资料,需要的朋友可以参考下
  • List中取出特定数据

    千次阅读 2021-01-28 15:27:51
    List<String> list = new ArrayList<>(Arrays.asList("a","b","c","f","b","e","d")); for (int i = 0; i < list.size(); i++) { System.out.println("i="+i+"//str="+list.get(i)); if (list....

    1.for循环遍历删除指定元素

    		List<String> list = new ArrayList<>(Arrays.asList("a","b","c","f","b","e","d"));
            for (int i = 0; i < list.size(); i++) {
                System.out.println("i="+i+"//str="+list.get(i));
                if (list.get(i).equals("b")) {
                    list.remove(i);
                }
            }
    
    •  

    程序运行结果如图:
    如图
    由结果分析可知,利用for遍历删除,删除某个元素之后,list的大小发生变化,索引也发生变化,当删除索引为1的b之后,继续根据索引访问索引为2的元素,由于删除的缘故后面元素自动往前移动一位,故此时索引2上的元素已经不再是c,而变成了f,也就是如图所打印出来的结果,故for循环适合删除特定一位元素,不适合循环删除特定元素;

    2.增强for循环删除指定元素

            List<String> list = new ArrayList<>(Arrays.asList("a","b","c","f","b","e","d"));
            for (String s : list) {
                System.out.println("------"+s+"------");
                if ("b".equals(s)) {
                    list.remove(s);
                }
            }
    
    •  

    程序运行结果如图:
    如图

    3.iterator删除指定元素

            List<String> list = new ArrayList<>(Arrays.asList("a","b","c","f","b","e","d"));
            Iterator<String> iterator = list.iterator();
            while (iterator.hasNext()) {
                String next = iterator.next();
                System.out.println("------"+next+"------");
                if ("b".equals(next)) {
                    iterator.remove();
                }
            }
            System.out.println(list.toString());
    
    •  

    结果如图:
    如图
    可以正常删除

    展开全文
  • 数组,要求取出N条数据(要有规律的取出),下边上代码。 import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import java.util.SortedSet; import java.util.TreeSet; pu...

    最近有个需求,是从给出一个List<Object> 数组, 要求取出N条数据(要有规律的取出),下边上代码。

    import java.math.BigDecimal;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.SortedSet;
    import java.util.TreeSet;
    
    public class Test {
    
      public static void main(String[] args) {
    	//得筛选的list
        List<Object> list = new ArrayList<>();
        int listSize = 80;
        //填充测数据
        for (int i = 1; i <= listSize; i++) {
          list.add(i);
        }
    
        System.out.println("取出前===="+list.size());
        System.out.println("取出前===="+list);
        //要取出的数量
        int num = 9;
    
        List<Object> waitList = getList1(list, num);
        System.out.println("取出后===="+waitList.size());
        System.out.println("取出后===="+waitList);
      }
    
      /**
    	 * 根据计算有规律的从list中取出,相应的数量的数据
    	 * list 需要筛选的list
    	 * num  取出的个数
    	 * **/
      private static List<Object> getList1(List<Object> list, int num) {
        int listSize = list.size();
        if (listSize <= num) {
          return list;
        }
        List<Object> waitList = new ArrayList<Object>();
        BigDecimal bigDecimal = new BigDecimal(listSize);
        BigDecimal bigDecimal1 = new BigDecimal(num);
        BigDecimal bigDecimal2 = bigDecimal.divide(bigDecimal1,3,BigDecimal.ROUND_HALF_UP);
        for (int i = 0; i < num; i++) {
          BigDecimal index = bigDecimal2.multiply(new BigDecimal(i));
          int result = (int) Math.floor(index.doubleValue());
          waitList.add(list.get(result));
        }
        return waitList;
      }
      
      /**
    	 * 根据取出的数量 随机生成一组指定范围内不重复的下标,再去取
    	 * list 需要筛选的list
    	 * num  取出的个数
    	 * **/
    	private static List<Object> getList2(List<Object> list, int num){
    		int listSize = list.size();
    		//如果要取出的个数大于当前list的size;则返回当前list
    		if(listSize <= num) { return list; }
    		//待返回的list
    		List<Object> waitList = new ArrayList<Object>();
    		//随机生成要取出的下标
    		SortedSet<Integer> sortedSet = new TreeSet<Integer>();
    		randomSet(0, listSize, num, sortedSet);
    		System.out.println("sortedSet数集合====="+sortedSet);
    	    for (Integer i : sortedSet) {
    	    	waitList.add(list.get(i));
    		}
    		return waitList;
    	}
    	/**
    	 *      随机生成一组数
    	 * m   指定范围最小值 
    	 * n   指定范围最大值 
    	 * num 生成的数量(个)
    	 * set 数组集合
    	 * **/
    	public static void randomSet(int m, int n, int num, SortedSet<Integer> set) {
    	    set.add(m + (int) (Math.random() * (n - m)));
    	    if (set.size() < num) {
    	    	randomSet(m, n, num, set);
    	    }
    	}
    }
    
    

    测试1:

    测试2:

    如有好的想法,欢迎评论,互相学习下

    展开全文
  • Java:list中随机取出几条数据 1.公用方法: 参数:list 集合,count 要取的条数 2.请求的main方法: 3.代码复制: public static List GetRandomThreeInfoList(List list, int count) { List olist = new ...

    作者:施自扬
    微信号:shiziyangwx

    Java:list中随机取出几条数据

    1.公用方法:

    参数:list 集合,count 要取的条数
    在这里插入图片描述

    2.请求的main方法:

    在这里插入图片描述

    3.代码复制:

    public static List GetRandomThreeInfoList(List list, int count) {
    List olist = new ArrayList<>();
    if (list.size() <= count) {
    return list;
    } else {
    Random random = new Random();
    for (int i = 0 ;i<count;i++){
    int intRandom = random.nextInt(list.size() - 1);
    olist.add(list.get(intRandom));
    list.remove(list.get(intRandom));
    }
    return olist;
    }
    }

    展开全文
  • 主要介绍了java8从list集合中取出某一属性的值的集合案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 获取List中数据的实现方法

    万次阅读 2016-09-23 16:04:59
    但是获取读取list中数据的方法你知道几种呢!一下是我知道的方法分享给大家! List > list = new ArrayList>(); Map map1= new HashMap(); map1.put("keyname", "1111");  map1.put("sex", "5"); 方法一、 for(Map ...

    大家都知道List是很好的存储数据的集合类。

    但是获取读取list中数据的方法你知道几种呢!一下是我知道的方法分享给大家!

    List<Map<String,String> > list = new ArrayList<Map<String,String>>();

    Map<String,String> map1= new HashMap<String,String>();

    map1.put("keyname", "1111");

     map1.put("sex", "5");

    方法一、

    for(Map<String,String> maps:list) {

    System.out.println("得到的结果是name----"+maps.get("keyname")+ "\nsex-----"+maps.get("sex"));

    }

    方法二、

    for (int i = 0; i < list.size(); i++) {

    Map<String,String> maps = list.get(i);

    System.out.println("得到的结果是name----"+maps.get("keyname")+ "\nsex-----"+maps.get("sex"));

    }

    方法三 Iterator是一种迭代器、

    for(Iterator<Map<String,String>> iter = list.iterator();iter.hasNext();){

    Map<String,String> maps = iter.next();

    System.out.println("得到的结果是name----"+maps.get("keyname")+ "\nsex-----"+maps.get("sex"));

    }

    方法四:

    while(list.hasNext()){

    Map<String,String> maps = iter.next();

    System.out.println("得到的结果是name----"+maps.get("keyname")+ "\nsex-----"+maps.get("sex"));

    }

    展开全文
  • 获取list中重复的数据

    千次阅读 2021-01-19 23:18:13
    SupplierImportDTO, List<SupplierImportDTO>> collect = passCheckSupplierImportDTOList.stream().collect(Collectors.groupingBy(Function.identity())); for(Map.Entry<SupplierImportDTO, List<...
  • 一:设置List集合数据 List<String> userIds = new ArrayList...二:取出List集合的值,放入GroupMember对象数组 GroupMember[] members = new GroupMember[userIds.size()]; for(int i=0;i<userIds.size();
  • list集合中数据以固定数目取出

    千次阅读 2018-09-12 23:30:03
    假设一个接口请求数据每次最多只能10个,现在有105条数据怎么处理。 C#语言: List&lt;int&gt; list = new List&lt;int&gt;(); //简单制造数据 for (int i = 1; i &lt; 105;i++ ) { ...
  • 查询出List中的重复数据

    千次阅读 2020-09-10 10:25:02
    项目难免会遇到一个list对象存在相同的数据,但是我们怎么去找出相同的数据呢? import com.alibaba.fastjson.JSON; import com.king.science.dto.Student; import java.util.ArrayList; import java.util....
  • 在实际开发,经常会遇到需要找出(删除)一个list中某些元素的属性相同的元素,或者两个list中某些元素的属性相等的元素,这种方法很多,这里整理列出一些: 废话不说,上代码,有注释掉的你们自己看import java....
  • 使用lambda表达式取出list中重复的、不重复的数据数据:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4] 不重复的数据[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 重复的数据[1, 2, 3, 4] Process finished with exit code 0 ...
  • 一、取出list中bean的Id(其他字段更换为对应的方法即可),并且去重: List<RegisterBean> registerList = queryRegisterList(); //写法一 List<String> registerIds = registerList.stream().map...
  • 这有助于将请求的字段数据旁路到基础服务或数据源,以仅提取最终用户请求的数据的那些最小部分。 包含TypeScript !!! 安装 npm i graphql-fields-list 使用JavaScript: const { fieldsList , fieldsMap } = ...
  • 在开发的过程要处理...这里是用一个List来作为中间载体,每次取出一定量的数据写入Kafka,并且写入之后进行短时间的休眠,防止数据堆积过多。 优化代码: // 装填100条数据 for (int i = 0; i < list....
  • 查找list中重复数据

    千次阅读 2016-08-31 15:45:36
    查找一个List集合所有重复的数据,重复的数据可能不止一堆,比如:aa, bb, aa, bb, cc , dd, aa这样的数据。如果有重复数据,则给这些重复数据加上编号,上述数据改为:aa1, bb1, aa2, bb2, cc, dd.算法如下:...
  • //取出list集合的每一个元素添加到Set集合,若出现重复元素,add()方法返回false,取反并输出结果,得到的就是重复的元素,我这里是String集合忽略了大小写. Set<String> a = Seq.seq(x)
  • 在实际开发,经常会遇到需要找出(删除)一个list中某些元素的属性相同的元素,或者两个list中某些元素的属性相等的元素,这种方法很多,这里整理列出一些: 废话不说,上代码,有注释掉的你们自己看 import java....
  • java8 提取list中的重复元素

    千次阅读 2020-10-23 15:24:59
    List<T> checkRepeat(List<T> list) { return list.stream() .collect(Collectors.toMap(e -> e, e -> 1, (a, b) -> a + b)) // 获得元素出现频率的 Map,键为元素,值为元素出现的次数...
  • list数据比对与list对象比对

    千次阅读 2018-12-24 22:39:22
    第一种方式使用工具类进行比较 ... import java.util.ArrayList; import java.util.HashMap;...import java.util.List; import java.util.Map; /** * lists数据比对 * @author nick */ public class ...
  • 反射获取对象list数据

    千次阅读 2019-07-19 20:01:33
    * 反射获取对象list数据 * @param object * @param dateClass * @param */ public static<T> void getList(Object object,T dateClass){ List<T> resultList = new ArrayList(); if(!ObjectUtils....
  • 今天被问到了一个面试题,挺有意思的,这里特意的记录一下,问题是这样的:怎么从list中找出重复数据,以及这些重复数据的个数?  解决思路是:使用一个map,key用来记录list中数据,value用来记录重复数据的...
  • List集合数据移除(List.subList.clear)

    千次阅读 2020-10-21 23:11:52
    List集合数据移除(List.subList.clear...为了能正确的获取到数据,获取完成第一段数据之后,将前五个数据list集合移除,然后在获取第二段数据,这样也方便循环。 最开始我是这样做的remove(),移除数据: public sta
  • java获取list中数组数据

    万次阅读 2018-04-11 14:21:01
    1.新加一个list来接收目标数据List&lt;Object[]&gt; list = new ArrayList&lt;Object[]&gt;();2.循环listfor (int i = 0; i &lt; list.size(); i++) {//从集合获取数组Object[] ob = list.get...
  • toList ( ) ) ; 贴上代码 package com . cmai . lambda ; import com . alibaba . fastjson . JSON ; import java . util . ArrayList ; import java . util . List ; import java . util . ...
  • List集合的数据

    千次阅读 2019-07-28 19:51:03
    List集合的数据 开发工具与关键技术:java 作者:彭浩达 撰写时间:2019年 7月 26日 public void InsetChuku(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOExcep...
  • * 在list集合随机取出指定数量的元素 * @param list 取元素的集合 * @param count 个数 * @return */ public static List getRandomThreeInfoList(List list, int count) { List olist = new ArrayList<...
  • redis数据结构list

    千次阅读 2019-01-30 23:44:23
     ArrayList使用数组方式存储数据,所以根据索引查询数据速度快,而新增或者删除元素时需要设计到位移操作,所以比较慢。  LinkedList使用双向链接方式存储数据,每个元素都记录前后元素的指针,所以插入、删除...
  • 【Java】——list中快速进行数据筛选

    千次阅读 2019-09-13 21:13:11
    小编最近的项目经常需要多个list拼接成一个,才能进行之后的操作,如何保证多个list拼接是一条数据呢?大家都知道list不能根据唯一标识进行筛选,那岂不成需要循环依次遍历,考虑系统处理的数据量,这个执行起来那...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 429,599
精华内容 171,839
关键字:

如何取出list中的数据