CoreJava_Collection接口中的add是有返回值的!
来源:互联网 发布:sha256算法c# 编辑:程序博客网 时间:2024/05/09 07:17
今天跟朋友讨论一个小的知识点,发现很多人不知道collection接口中定义的add方法是有返回值的,大家都是工作很多年的Java从业人员了,对公用接口的不熟悉会让自己在细节上吃亏的。这让我想到了刚入行的时候的一个小面试,另外一个项目的项目经理神秘兮兮的问,jdbc调用sql执行完成之后,返回什么值?
返回什么值?这个问题确实难到我了,但是联想一下,一般在数据库当中执行到最后一步的时候,尤其是mysql数据库中,执行了一条语句之后,控制面板一般都会输出一个'当前操作影响了X条记录之类',比如,插入了一条数据,后台会输出,当前影响了1条记录。于是就尝试着猜了一下,'应该是返回对数据库的影响条数吧?'。于是当时就被稀里糊涂的分配到另外一个相对比较锻炼人的项目上了,当时好像很少有人能够回答出来。通过这个事情,还是能够说明思维的发散在我们的职业生涯中还是非常有用的。
回过头来说collection这个接口,为什么会返回一个boolean值。对于set而言,有一个特性就是能够排除相同的元素。这里面有两个比较重要的知识点是一定要搞明白的,第一个是 如何判断一个对象是相等的?第二个是散列表的原理,具体的问题带着疑问去百度吧。
返回什么值?这个问题确实难到我了,但是联想一下,一般在数据库当中执行到最后一步的时候,尤其是mysql数据库中,执行了一条语句之后,控制面板一般都会输出一个'当前操作影响了X条记录之类',比如,插入了一条数据,后台会输出,当前影响了1条记录。于是就尝试着猜了一下,'应该是返回对数据库的影响条数吧?'。于是当时就被稀里糊涂的分配到另外一个相对比较锻炼人的项目上了,当时好像很少有人能够回答出来。通过这个事情,还是能够说明思维的发散在我们的职业生涯中还是非常有用的。
回过头来说collection这个接口,为什么会返回一个boolean值。对于set而言,有一个特性就是能够排除相同的元素。这里面有两个比较重要的知识点是一定要搞明白的,第一个是 如何判断一个对象是相等的?第二个是散列表的原理,具体的问题带着疑问去百度吧。
下面是一个小例子,细节决定成败,与君共勉。
import java.util.Collection;import java.util.HashSet;public class CollectionInterface { public static void main(String[] args) { int[] arrays = new int[]{1,2,3,4,5,6,7,8,9,10,1,2,3,4,5}; Collection<Integer> set = new HashSet<Integer>(); int counter = 0; for(int temp :arrays){ if(set.add(temp)){ counter++; }else{ System.out.println("The date "+temp+" has already been existent,discard it."); } } System.out.println("counter=> "+counter); System.out.println("set.size()=> "+set.size()); }}
0 1
- CoreJava_Collection接口中的add是有返回值的!
- 返回值类型是接口
- HashSet中的add()机制是怎么样的。
- php 调试微信接口时curl无返回值,file_get_contents有返回值的解决方法
- Callable 有返回值的异步(Runnable 异步是没有返回值的)
- 返回类型是接口
- C++ 中的“有返回值”的“虚”构造函数
- ThinkPHP add()操作的返回值
- thinkphp中的add(),save(),delete()返回值问题
- 异步运算考虑使用Callable接口 有返回值的线程
- linux c 一站式学习 函数接口 返回值是指针的情况
- VC编写返回值是字符串,以及有引用型变量为参数的DLL
- 函数为什么实现的是一些操作但却有整形返回值
- 有返回值的分页
- 有返回值的函数
- 有返回值的存儲過程寫法與調用
- 有返回值的线程
- 有返回值的线程
- 用模板元实现50个台阶问题,一次走一步或者两步或者3步,用模板元实现求裴波那契额数列
- 红黑树简明图解
- 让console后台运行的几个法子
- SOTI & 三菱重工: 使移动信息更加可靠!
- c++复制/拷贝构造函数
- CoreJava_Collection接口中的add是有返回值的!
- Java生成缩略图开源项目Thumbnailator
- 推荐算法之协同过滤实战
- c++中const用法总结
- 使用CSS在页面中嵌入字体(多种字体文件格式)
- Android照片墙应用实现,再多的图片也不怕崩溃
- Android数据存储——2.文件存储_F_解析JSON文档
- java static 作用
- modprobe XXX not found 解决与Depmod命令; insmod/modprobe的区别