「java找出list多余」java list查找某一个元素

博主:adminadmin 2023-03-22 12:58:09 621

今天给各位分享java找出list多余的知识,其中也会对java list查找某一个元素进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

两个List对比取出多余的数据

import java.util.ArrayList;

import java.util.List;

public class I {

public static void main(String[] args) {

List list1 = new ArrayList();

for (int i = 0; i 7; i++) {

list1.add(i);

}

List list2 = new ArrayList();

for (int i = 3; i 10; i++) {

list2.add(i);

}

System.out.println("List1:" + list1);

System.out.println("List2:" + list2);

System.out.println("交集为" + getIntersection(list1, list2));

}

public static List getIntersection(List list1,

List list2) {

List result = new ArrayList();

for (Integer integer : list2) {//遍历list1

if (list1.contains(integer)) {//如果存在这个数

result.add(integer);//放进一个list里面,这个list就是交集

}

}

return result;

}

}

(即C)中的内容。 特别提醒:此处的行序号参数

面试题JAVA:给定list包含1-100中的95个数字,如何找出5个剩下的??

个人认为,提高效率用空间换时间。

先定义一个int数组,大小101。

遍历list,当list.get(i)的值为1时 复制int[1]=1; 如果list.get(i)为99时,int[99]=1; 等等。

然后遍历数组 输出数组中为0的序号index。即是剩下的5个数字。

代码如下:

Integer[] array = new Integer[101];

for(Integer i:list){

array[i]=1;

}

for(int j=1;j101;j++){

if(array[i]==0){//输出剩下的5个

System.out.println(i);

}

}

个人认为此效率最高。

java 怎样把list中相同的数据找出来

依次处理list的元素list[i],用dup装去重元素,mul装重复元素。先检查dup是否包含元素list[i],如果包含则加入mul中。如果没有则加入dup中。最后mul中就是重复数据,dup中就是去掉重复元素的列表。下面是一个实例,首先生成一个列表list,然后找出重复元素。

public class Duplication

{

    public static void main(String[] args)

    {

        ListInteger list = new ArrayListInteger();

        for(int i = 1;i = 10;i++)

        {

            if(i%3 == 0) continue;

            if(i%2 == 0)

            {

                list.add(i);

                list.add(i);

            }

            else

                list.add(i);

        }

        System.out.println(list);

        

        ListInteger dup = new ArrayListInteger();

        ListInteger mul = new ArrayListInteger();

        for(int a:list)

        {

            if(dup.contains(a))

                mul.add(a);

            else dup.add(a);

        }

        System.out.println(dup);

        System.out.println(mul);

    }

}

Java中如何去除List中的重复的值

你要去除的值是基本数据类型还是对象呢?

如果不想存重复数据何不用Set呢。。。

其实吧。。在知道上提问不如在网页上查。。这个是我查到的第一个。。网页里的内容,他一共使用了3种方式

最近项目中需要对list集合中的重复值进行处理,大部分是采用两种方法,一种是用遍历list集合判断后赋给另一个list集合,一种是用赋给set集合再返回给list集合。

但是赋给set集合后,由于set集合是无序的,原先的顺序就打乱了。所以我又想着能不能用set的特性进行去重又不打乱顺序呢?

试了一下,也是可以的,几种方法在不同情况下都有各自的优势。现在将代码写出来,比较一下。

//set集合去重,不打乱顺序

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

Set set = new HashSet();

List newList = new ArrayList();

for (String cd:list) {

if(set.add(cd)){

newList.add(cd);

}

}

System.out.println( "去重后的集合: " + newList);

}123456789101112131415161718

//遍历后判断赋给另一个list集合

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

ListString newList = new ArrayListString();

for (String cd:list) {

if(!newList.contains(cd)){

newList.add(cd);

}

}

System.out.println( "去重后的集合: " + newList);

}1234567891011121314151617

//set去重

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

Set set = new HashSet();

List newList = new ArrayList();

set.addAll(list);

newList.addAll(set);

System.out.println( "去重后的集合: " + newList);

}12345678910111213141516

//set去重(缩减为一行)

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

List newList = new ArrayList(new HashSet(list));

System.out.println( "去重后的集合: " + newList);

}12345678910111213

hashset不进行排序,还有一种方法是用treeset,去重并且按照自然顺序排列,将hashset改为treeset就可以了。(原本的顺序是改变的,只是按照字母表顺序排列而已)

//去重并且按照自然顺序排列

List newList = new ArrayList(new TreeSet(list));

java中 list怎么去除多条数据?

楼上的回答的都太不负责人了,自己不都不确定,怎么能把别人教清楚

一种是用循环,一个个移除,一种是用removeAll函数

我给出removeAll的例子

public static void main(String[] args)

{

ListInteger listOne = new ArrayListInteger();

//add 8 elements

listOne.add(1);

listOne.add(2);

listOne.add(3);

listOne.add(4);

listOne.add(5);

listOne.add(6);

listOne.add(7);

listOne.add(8);

ListInteger listTwo = new ArrayListInteger();

//add 4 elments

listTwo.add(2);

listTwo.add(3);

listTwo.add(4);

listTwo.add(5);

listOne.removeAll(listTwo);//remove the elements in listOne which also in listTwo

System.out.println(listOne);//result [1,6,7,8]

}

java找出list多余的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java list查找某一个元素、java找出list多余的信息别忘了在本站进行查找喔。