15.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
15.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
1、什么是Set?(what)
Set是Collection容器的一个子接口,它不允许出现重复元素,当然也只允许有一个null对象。
2、如何来区分重复与否呢?(how)
“ 用 iterator() 方法来区分重复与否 ”,这是在网上流传的答案,个人认为这是个错误的答案。JPI中写的很明白:“set 不包含满足
e1.equals(e2) 的元素对 e1 和 e2 ”,由此可见回答使用equals()区分更合适。
3、为什么用equals()而不用==来区分?(why)
应该从它俩的区别谈起,==是用来判断两者是否是同一对象(同一事物),而equals是用来判断是否引用同一个对象。再看一下Set里面存的是
对象,还是对象的引用。根据java的存储机制可知,set里面存放的是对象的引用,所以当两个元素只要满足了equals()时就已经指向同一个对象,
也就出现了重复元素。所以应该用equals()来判断。
15.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?相关推荐
- java set如何判断重复_set 怎么用iterator()方法来区分重复与否
import java.util.HashSet; import java.util.Iterator; import java.util.Set; public class SetTest { // ...
- Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别? 1.什么是Set?(what) Set是Collection容器的一个子接口,它不允许出现 ...
- 面试3 -- Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
1.==和equals()的区别 ==是判断对象的内存地址,s1==s2,s2的引用的对象跟s1是同一个. Object类的equals 也是判断对象的内存地址.底层也是用的==. 有一些类复写了eq ...
- 12、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用 == 还是equals()? 它们有何区别?
12.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用 == 还是equals()? 它们有何区别? Set里的元素是不能重复的,那么用iterator()方法来区分重复与否.Equ ...
- 【Java面试题】39 Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?...
1.什么是Set?(what) Set是Collection容器的一个子接口,它不允许出现重复元素,当然也只允许有一个null对象. 2.如何来区分重复与否呢?(how) " 用 itera ...
- Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢
1.什么是Set?(what) Set是Collection容器的一个子接口,它不允许出现重复元素,当然也只允许有一个null对象. 2.如何来区分重复与否呢?(how) " 用 itera ...
- Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用==还是equals()?它们有何区别?
Set里的元素是不能重复的,元素重复与否是使用equals()方法进行判断的. ==和equal区别也是考烂了的题,这里再重复说一下: ==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所 ...
- Set里的元素是不能重复的,那么用什么方法来区分重复与否呢 是用==还是equals() 它们有何区别
Set里的元素是不能重复的,元素重复与否是使用equals()方法进行判断的. equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配 ...
- HashSet里的元素是不能重复的,那用什么方法来区分重复与否呢?
解: 当往集合里添加元素时,调用add(object)方法时,首先会调用object的hashcode()方法判断hashcode是否存在,不存在时,则直接插入元素. 如果已存在则调用object对象 ...
最新文章
- 面试时与人事交谈时间_如何与您的技术负责人交谈并解决通讯故障
- 4个做管理后才知道的秘密
- JavaScript的AMD规范
- Pytorch中的variable, tensor与numpy相互转化的方法
- tb项目管理实践_项目经理与项目管理整理
- Eclipse-习惯设置/快捷键/插件
- django ----CBV中加装饰器
- 轻量应用服务器安装mysql_阿里云轻量应用服务器Linux-Centos7下MySQL8.0.19的安装
- spring boot利用controller来测试写的类
- 六年级下计算机课ppt课件ppt课件,小学信息技术浙摄影版六年级上册第1课 走进计算机说课ppt课件...
- 一键打开 macOS Mojave 的黑暗模式
- 人物-作家-卡耐基:戴尔·卡耐基
- android https HttpsURLConnection 忽略证书
- BLDC电压和运动方程
- C++实现双人中国象棋(一)——算法篇(附完整代码)
- mysql varchar(n) n表示字符个数
- 快手 sig(sign)签名算法 java版
- 华硕电脑进入安全模式的方法
- C++wildcard maching通配符匹配的算法实现(附完整源码)
- TODO List -20160602
热门文章
- 牧牛区块链培训,区块链对社会生产的五大好处
- 单片机实验(十三)串口自发自收实现
- 阿德莱德大学计算机科学学士排名,2020年阿德莱德大学计算机科学学士就业前景,入学要求介绍...
- pygame.USEREVENT创建多个用户事件
- 云存储哪家强:AWS、Azure、Google、SoftLayer
- [cf] 752 div2 B. XOR Specia-LIS-t
- html2txt h2t.c
- 常见的两种python编译器的安装
- 以想总结就来博客写写
- 笔记本电脑dns服务器没有响应怎么办,华硕笔记本重装系统后dns服务器未响应怎么办?...