`

怎么样删除list里面相同的对象??

 
阅读更多
public class TestSet 
{ 
 public static void main(String[] args) 
 { 
    Random rand = new Random(); 
    Set<String> setStr = new HashSet<String>(); 
    String 
     aa=new String("aaa"), 
     bb=new String("aaa"); 
    System.out.println(aa==bb); 
    setStr.add(aa); 
    setStr.add(bb); 
    System.out.println(setStr); 
    System.out.println(setStr.size()); 
    System.out.println(); 
  } 
} 
//显示结果是: 
//false 
//[aaa] 
//1 
//HashSet里持有的对象是String类或者Integer类,那就可以保证元素的值不重复,但如果存放的是我自己写的类的话,那就肯定会有重复的元素,比如下面这段程序: 
  Set<MyObj> setobj = new HashSet<MyObj>(); 
  for(int i=0;i<30;i++) 
  { 
   setobj.add(new MyObj(rand.nextInt(10))); 
  } 
  System.out.println(setobj); 
  System.out.println(setobj.size()); 
  System.out.println(); 
//显示结果如下: 
//[9, 1, 5, 3, 1, 7, 6, 5, 6, 1, 3, 2, 5, 0, 3, 6, 6, 6, 9, 8, 6, 5, 5, 8, 5, 1, 1, 2, 3, 0] 
//30
//很明显元素的值重复了,谁能告诉我这是为什么呢??哎
//另外,MyObj类如下: 
public class MyObj implements Comparable<MyObj>,Serializable 
{ 
 private int i; 
 public MyObj(int i) 
 { 
  this.i=i; 
 } 
 public int getI() 
 { 
  return i; 
 } 
 public String toString() 
 { 
  return Integer.toString(i); 
 } 
  
 public int compareTo(MyObj obj) 
 { 
  if (this.getI()>obj.getI()) 
   return 1; 
  else if (this.getI()==obj.getI()) 
   return 0; 
  else 
   return -1; 
 } 
}
//给MyObj类加上了一个hashCode()方法和equals()方法,于是我的MyObj也不重复了,可能HashSet中,这两个方法必须被覆盖
分享到:
评论

相关推荐

    list去掉重复对象

    一个list里面有多个对象,对象有几个字段,要求在对象里面不要有重复的数据的实现。

    两个list比较 取不同的对象

    比较list得到不同的对象 慎重注意list的大小变化和索引 精简算法

    Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并

    Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并 Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并

    C# 修改list所有对象中的某字段

    C# 修改list所有对象中的某字段 博客地址:https://blog.csdn.net/qq_36051316/article/details/83475372 的案例

    Java中Json字符串直接转换为对象的方法(包括多层List集合)

    下面小编就为大家带来一篇Java中Json字符串直接转换为对象的方法(包括多层List集合)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Java copy对象的工具类

    Java CopyUtil工具类,可以进行对象的深copy,比如:对象里面包含对象,对象里面包含Map,List,Set...等复杂类型的属性都可以copy,copy后的对象与原有对象没有联系,即改变原有对象内容,不会改变copy后的对象里面的...

    sturts框架下返回json数据 list map 对象

    sturts框架下返回json数据,可以是 list对象 map对象 或者java类对象等,这是一个完整的实例,里面有jar包。

    js解析json读取List中的实体对象示例

    List中存放多个student对象 2、前台js 中先将结果json串转成对象 代码如下: var obj = eval&#40;“(“+data+”&#41;”); 3、遍历取list 中的对象 代码如下: for(var key in obj){ //第一层循环取到各个list ...

    List对象转JSON对象jar包

    里面包含了所有List转JSON的jar包,下载解压添加到工程即可使用

    list转换成string数组

    把list类型的数据转换成string类型的数组

    SpringMVC面试专题.pdf

    1、什么是 SpringMvc? 2、Spring MVC 的优点: ...21、当一个方法向 AJAX 返回特殊对象,譬如 Object,List 等,需要做什么处理? 22、SpringMvc 里面拦截器是怎么写的 23、讲下 SpringMvc 的执行流程

    java8中stream流对List操作的一些测试方法

    java8中通过stream流对List类型进行一些操作的测试Demo类

    判断List和Map是否相等并合并List中相同的Map

    今天小编就为大家分享一篇关于判断List和Map是否相等并合并List中相同的Map,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    java中set、list和map的使用方法实例

    // java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)模式。 // GOF给出的定义为:提供一种方法访问一个容器(container)对象中的各个元素, // 而又不需暴露该...

    计算一个Java对象占用字节数的方法

    主要介绍了计算一个Java对象占用字节数的方法,较为详细的分析了Java中各类对象所占用的字节数,需要的朋友可以参考下

    set.list.map接口

    如果有相同键对象,最后一次加入的键对象和值对象将会覆盖以前的; Eg: package test; import java.util.Iterator; import java.util.Map; import java.util.Set; import java.util.TreeMap; public class NewMap...

    Python面试大全 完整版附答案

    13.请写出一段python代码实现删除list里面的重复元素? 14.给定两个list Python高级 元类 内存管理与垃圾回收机制 函数 设计模式 面向对象 正则表达式 系统编程网络编程 Web Flask Django 爬虫数据库 MySQL Redis ...

    JNI 调用(包含复杂对象传参)

    实现了jni 中java向vc dll传递list参数/String参数 对象的接口。vc代码可用vc6.0运行编译,java调用接口在src\common\CameraUtil.java里面。测试了好久才实现的(涉及到项目机密,部分资源文件没有上传,内部方法是...

    Python经典面试题 Python常见面试考试题目整理总结 Python面试题手册 共15页.pdf

    8:Python 面试题:请写出一段 Python 代码实现删除一个 list 里面的重复元素 9:Python 文件操作的面试题 10:Python 里面如何生成随机数? 11:如何用 Python 来发送邮件? 12:Python 里面如何拷贝一个对象? 13...

    2017XML字符串转对象Object 实现工具

    转换为对象 xmlToObject.vo.Request(自定义) 里面还包含其他对象。 转成的对象 已JSON格式后台输出 {"body":{"class":"xmlToObject.vo.ReqBody","list":[{"class":"xmlToObject.vo.Foot","name":"红豆","rmb":"10...

Global site tag (gtag.js) - Google Analytics