`

java中两个list互相比较

阅读更多


java的应该是有个类可以专门实现:

package test;

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


public class Test {
public static void main(String[] args) {


List list1=new ArrayList();
List list2=new ArrayList();
List list3=new ArrayList();

UserInfo user=new UserInfo("name1",12);
UserInfo user1=new UserInfo("name2",12);
UserInfo user2=new UserInfo("name3",12);
UserInfo user3=new UserInfo("name4",12);

list1.add(user);
list1.add(user1);
list1.add(user2);
list1.add(user3);

list2.add(user);
list2.add(user);

for (int i = 0; i < list2.size(); i++) {
if(list1.containsAll(list2)){
list1.removeAll(list2);
System.err.println(list1.size());
}

}

}

}

class UserInfo{
public UserInfo(){}
public UserInfo(String name,int age){
this.userAge=age;
this.userName=name;

}

public String userName;
public int userAge;

public int getUserAge() {
return userAge;
}
public void setUserAge(int userAge) {
this.userAge = userAge;
}

public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}

}

上边的可以,利用了2个方法:if(list1.containsAll(list2)){list1.removeAll(list2);}先判断是否包含,如果包含那么移除。



分享到:
评论

相关推荐

    基于java8新特性+反射机制实现list不同实体类互转.zip

    例如,如果源实体类有一个`name`字段,目标实体类也有一个`name`字段,我们可以通过反射找到这两个字段并进行赋值。 在实现过程中,我们可以创建一个工具类,如`ListConvertUtil`,并在其中定义静态方法,如`...

    java不同对象及集合的多次复制

    这样,两个对象完全独立,互不影响。 2. **Java中的对象复制方法** - **clone()方法**:Java的Object类提供了一个`clone()`方法,但默认实现是浅拷贝。如果需要深拷贝,需要在每个需要复制的对象类中实现`...

    10个Java经典的List面试题

    在 Java 中,List 是一个接口,提供了多种实现类,如 ArrayList、LinkedList、Vector 等。下面我们将详细介绍 Java 中的 List 面试题。 1. 你知道的 List 都有哪些? List 是一个接口,具有多种实现类,常见的实现...

    java源码包---java 源码 大量 实例

    Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加...

    Java经典的List面试题目

    这两个方法都会按照自然排序或自定义比较器进行排序。 9. **Arrays.asList方法后的List可以扩容吗?** `Arrays.asList()`返回的List是固定大小的,不支持扩容,也不支持直接添加元素,因为其内部使用的是final数组...

    java中ArrayListMapObject与Json互相转换.pdf

    在Java编程中,经常需要处理数据的序列化和反序列化,其中ArrayList&lt;Map&lt;Object&gt;&gt;与JSON之间的转换是一个常见的需求。JSON是一种轻量级的数据交换格式,广泛用于互联网应用中的数据传输,因为它易于阅读和编写,同时...

    java源码包2

    Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用...

    Java 面试难点 重点

    - **循环引用**:虽然Java的垃圾回收器能够处理一般的循环引用情况,但在某些复杂的场景下(比如两个对象互相持有对方的强引用),如果没有外部引用指向这两个对象,则可能导致内存泄漏。 - **静态集合类的不当...

    java源码包3

    Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用...

    JSON与Java互相转换Demo(Eclipse)

    这两个库分别提供了JSON对象和Java对象之间转换的方法。 1. org.json库: - JSONObject:表示JSON对象。 - JSONArray:表示JSON数组。 - JSONParser:用于解析JSON字符串。 - `JSONObject.toString()`:将JSON...

    C# To JAVA Converter v17.10.6(最新破解版)

    C#到Java的转换过程中,主要涉及到以下几个关键知识点: 1. 类与对象:C#和Java都基于类,但C#支持接口和抽象类,Java只有接口。转换时需注意这两者的对应关系。 2. 泛型:C#的泛型比Java更灵活,Java中的泛型是...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用...

    java.util包

    这两个接口是Java集合框架的重要组成部分,提供了访问和操作集合元素的标准方式。 3. Map接口和其实现类:Map接口定义了键值对存储的数据结构,HashMap是其最常见的实现,提供快速的存取速度。TreeMap基于红黑树...

    java全集.pdf JAVA全集

    - 死锁问题:多个线程互相等待对方释放锁导致无法继续执行。 #### 十四、标准I/O流与文件 **15.1 对文件的操作** - 文件读写操作通常使用File类和相关的流类。 **15.2 处理跨平台性** - Java通过抽象类File来...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用...

    androidmap转json字符串、list转json字符串工具类.zip

    总结一下,这个压缩包提供的是两个关键的Java工具类,它们能够帮助Android开发者快速地将Map和List对象转换为JSON字符串。通过理解和使用这些工具,可以提高代码的可读性和效率,简化数据处理流程。在实际项目中,...

    java高级工程师-面试题及答案

    - **C项**:这是一个合法的循环结构,使用两个变量`j`和`k`作为循环条件的一部分,并且在循环体内更新这些变量。 - **D项**:`continue loop;`语法错误,`continue`后面不应该跟任何标识符。 #### 4. 给出下面代码...

    xml和java bean互相转换工具包(简单易用)

    3、bean类属性(boolean除外)前面两个字母要么全部小写,要么全部大写,否则 无法读存BEAN值。 4、bean类boolean属性(Boolean无此要求),前面三个字母需要小写,否则 无法读存BEAN值。 5、bean里面的属性如何仍然是...

    最近5年133个Java面试问题列表

    例如,如果有两个线程分别尝试修改数组的两个不同索引位置的值,这两个操作不会互相干扰。 2. **volatile是否能使非原子操作变成原子操作?** - **答案:** volatile关键字能够确保单个变量的操作是原子性的。...

    java实现强连通图

    2. 路径查找:在网络路由中,强连通图可以帮助确定任意两个节点之间是否可以互相通信。 3. 图形界面设计:在用户界面设计中,强连通图可以用于检测菜单项之间的相互可达性,防止出现无法通过点击返回的菜单结构。 ...

Global site tag (gtag.js) - Google Analytics