set三个子类的底层其实都是Map的。我们也知道Map是key-value键值对出现的。我们也知道,set添加方法是set.add(“1”)。参数只有一个,不是键值对的,那么底层Map怎么存储的呢?
TreeSet的构造方法

从源码中,我们可以看到,把传递的参数作为key处理的。那么,value又是什么呢?

PRESENT是什么呢?

其实就是new了个object对象。

问题来了:set为什么不能不能存放重复值,而list就可以了呢?

从上面add的源码中,我们可以看出,add的数据是作为map的key来存放的。在Map中,Key是不能重复的。所以,set里面的数据不能有重复的

Java中Set为什么不能存放重复值相关推荐

  1. Java中的参数传递,到底是值传递还是引用传递?

    文章内容为转载,转载自公众号Hollis关于我要彻底给你讲清楚,Java就是值传递,不接受争辩的那种! 原文链接:我要彻底给你讲清楚,Java就是值传递,不接受争辩的那种! 知乎回答链接:Java 到 ...

  2. java中如果需要返回多个值怎么办

    Java中如果需要返回多个值怎么办 首先我们明确一下:java方法的返回值只有一个,但是返回值的类型不限 有一种编程语言可以返回多个值 Python,实例如下:  运行结果如下: [whuang@hu ...

  3. Java中url传递中文参数取值乱码的解决方法

    Java中url传递中文参数取值乱码的解决方法 参考文章: (1)Java中url传递中文参数取值乱码的解决方法 (2)https://www.cnblogs.com/liwenjuan/p/3211 ...

  4. Java中两数交换引发的值传递问题及解决方案

    Java中两数交换引发的值传递问题及解决方案 今天导师分享了一个有趣的代码,记录一下,让我们一起看看~ //交换两个整数 private static void swap(int i, int j) ...

  5. 如何在Excel中突出显示不同颜色的重复值?(转载)

    转载连接:如何在Excel中突出显示不同颜色的重复值? 简介在Excel中,我们可以用一种颜色轻松地突出显示一列中的重复值 条件格式但是,有时候,我们需要突出显示不同颜色的重复值,以便快速轻松地识别重 ...

  6. Java中final类是存放在哪_详解Java中的final关键字

    1 修饰属性或者变量 无论属性是基本类型还是引用类型,作用都是变量里面存放的"值"不可变 经常和static关键字一起使用,作为常量 1 基本类型,变量放的是实实在在的值,如1,& ...

  7. 为什么我可以在Java中抛出null? [重复]

    本文翻译自:Why can I throw null in Java? [duplicate] This question already has an answer here: 这个问题已经在这里有 ...

  8. java中8种数据类型和默认值所占字节数

    java 8种基本数据类型的默认值及所占字节数 通过一段代码来测试一下 8种基本数据类型的默认值 1 package dierge; 2 3 public class Ceshi { 4 int a; ...

  9. 关于Java中的对象的哈希值何时相等

    本文出处:http://blog.csdn.net/chaijunkun/article/details/7624328,转载请注明.由于本人不定期会整理相关博文,会对相应内容作出完善.因此强烈建议在 ...

最新文章

  1. Android 取得 ListView中每个Item项目的值
  2. PyQt5 简易计算器
  3. 智能合约不够安全?微软建专项小组从编程语言入手根治
  4. 01背包模板、全然背包 and 多重背包(模板)
  5. 分类算法之决策树CART算法
  6. STM32那点事(5)_ADC(中)
  7. gentry同态加密算法_基于Gentry全同态加密算法公钥个数优化的研究
  8. Python使用matplotlib可视化模拟学生课程分数雷达图
  9. Linux Socket 网络编程
  10. 【LOJ】#2062. 「HAOI2016」地图
  11. linux压缩归档命令gzip、bzip2、xz、tar、zip详解
  12. qs2021年世界大学计算机专业排名,北科大新闻网-学校在QS2021年世界大学排名中位列446 上升16名...
  13. oracle12c启动ODM,Oracle 12c impdp 导入ORA-17500: ODM err:Communication error on send 错误处理方法...
  14. 北漂18届三本毕业生从实习到正式工作的前端开发求职经历
  15. 看我如何拿下BC站的服务器
  16. 服务器使用固态硬盘的优缺点
  17. react useCallback的用法
  18. 华为手机打开图片很慢是怎么回事_华为手机打开应用很慢怎么办
  19. electron 11 win10 全屏透明窗口是不透明
  20. windows下安装VMware Workstation14.0Pro(VMware系列一)

热门文章

  1. Excel 2007功能区开发大全
  2. 关于Java对象数组赋值的问题
  3. Linux进程调度 - 组调度及带宽控制 LoyenWang
  4. 远程连接数据库(SQLServer)
  5. Linux mysql federated_MySQL FEDERATED 提示
  6. 有关小波的几个术语及常见的小波基介绍
  7. [DASCTF 7月赛] 复现
  8. T208 实现前缀树
  9. MySQL数据库(Java的数据库编程:JDBC)
  10. html中表格实现在页面居中显示,table居中显示 css table 单元格 居中