java基础-容器-Set】的更多相关文章

已经写了一段时间JAVA代码了,但仔细想来,却发现对JAVA的很多方面还是一片迷茫. 利用周末补一下基础知识吧. 大致列一下这个周末需要学习的内容 1 容器 (本节内容) 2 线程 3 流 目录 1 接口List Set Collection Comparable 2 工具类 Collections 3 Set 的去重原理 4 hashcode equals 的重写 5 Iterator接口实现的的遍历(List Set Map) 一.容器 接口:Collection 接口定义了容器的基本操作,…
Colections接口, Iterator接口, Set接口, List接口, Comparable接口, Map接口 Collections类 容器:装各种对象. 所有容器都在java.util里. Set, List, Map 1136: 1一个图: Collection接口分为Set和List两个接口 Set接口:  没有顺序并且不可以重复 equals判断是否可重复 List接口: 有顺序并且可以重复 Map接口定义了存储 key-value映射对的方法 Collection接口 Se…
Java容器可以说是增强程序员编程能力的基本工具,本系列将带您深入理解容器类. 容器的用途 如果对象的数量与生命周期都是固定的,自然我们也就不需要很复杂的数据结构. 我们可以通过创建引用来持有对象,如 Class clazz; 也可以通过数组来持有多个对象,如 Class[] clazs = new Class[10]; 然而,一般情况下,我们并不知道要创建多少对象,或者以何种方式创建对象.数组显然只能创建固定长度的对象,为了使程序变得更加灵活与高效,Java类库提供了一套完整的容器类,具备完善…
Set:set不存重复元素,如果是使用set存储java预定义的Integer,String等类型会很简单,如果是存储自定义类型的数据类型,就必须要重新定义equals()方法以确保set中保存的对象得人唯一性,set接口是不保证元素的次序的,所以当你的set使用场景不同时,也要根据实际情况选着不同的set实现: HashSet:为快速查找而设计,存入HashSet的元素必须定义hashCode()(默认选择) TreeSet:存储在TreeSet里面的数据是有序的,底层是树结构,元素必须实现C…
转载:http://blog.csdn.net/weitry/article/details/52964509 JAVA基础系列规划: JAVA基础(1)——基本概念 JAVA基础(2)——数据类型 JAVA基础(3)——容器(1)——常用容器分类 JAVA基础(4)——容器(2)——普通容器 JAVA基础(5)——并发(1)——总体认识 JAVA基础(6)——并发(2)——原子 JAVA基础(7)——并发(3)——锁机制 JAVA基础(8)——并发(4)——线程池 JAVA基础(9)——容器(…
1.java基础 1.JDK 和JRE有什么区别 ​ JDK:java开发工具包,java开发运行环境.包含了JRE. ​ JRE:java运行环境,包含java虚拟机,java基础类库. 2.java基础类库 1. java.lang:java语言设计的基础类 2. java.util :提供处理日期.时间.随机数等工种工具的类 3. java.io:输入输出相关的类 4. java.nio:提供缓冲区类 5. java.beans:开发JavaBeans相关的类 6. .... 3.两个对象…
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大家.对于这次跳槽找工作, 我准备了挺长的时间, 其中也收集了很多比较好的笔试面试题, 大都是一些常用的基础, 很多都是由于时间原因没有来得及给出答案, 但是题目大都是比较经典实用的, 现在都放到这里, 希望对正处于找工作的博友有一定的帮助. 第一部分: Java基础(此部分面试题题目来自:http:…
http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没有考虑到会坚持往后边写,这次应该是更新该内容.而且很讨厌写基础的东西,内容比较琐碎,而且整理起来总会很多,有可能会打散成两个章节,但是我不保证,有可能一个章节就写完了,所以有时候希望基础的很多内容还是读者自己去看看,我基本保证把基础的内容全部都写出来,见谅.这一个章节写了过后我会把前边那个关于基础类…
Java集合类解析 List.Map.Set三个接口,存取元素时,各有什么特点? List 以特定次序来持有元素,可有重复元素.Set 无法拥有重复元素,内部排序.Map 保存key-value值,value可多值. Hashtable和HashMap的区别: 1.Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类: 2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的.即是说,在多线程应用程序中,不用专门的操作就安全地可以使…
Java基础常见英语词汇(共70个) ['ɔbdʒekt] ['ɔ:rientid]导向的                             ['prəʊɡræmɪŋ]编程 OO: object-oriented ,面向对象 OOP: object-oriented programming,面向对象编程 [dɪ'veləpmənt][kɪt]工具箱                              ['vɜːtjʊəl]虚拟的 JDK:Java development kit, j…
经典的Java基础面试题集锦,欢迎收藏和分享. 问题:如果main方法被声明为private会怎样? 答案:能正常编译,但运行的时候会提示”main方法不是public的”. 问题:Java里的传引用和传值的区别是什么? 答案:传引用是指传递的是地址而不是值本身,传值则是传递值的一份拷贝. 问题:如果要重写一个对象的equals方法,还要考虑什么? 答案:hashCode. 问题:Java的”一次编写,处处运行”是如何实现的? 答案:Java程序会被编译成字节码组成的class文件,这些字节码可…
Java集合容器主要有以下几类: 1,内置容器:数组 2,list容器:Vetor,Stack,ArrayList,LinkedList, CopyOnWriteArrayList(1.5),AttributeList(1.5),RoleList(1.5),RoleUnresolvedList(1.5), ConcurrentLinkedQueue(1.5),ArrayBlockingQueue(1.5),LinkedBlockingQueue(1.5), PriorityQueue(1.5),…
IT`huhui前言录 这是自己对JAVA基础的一个小总结,会不断完善.因为时间仓促的原因. 每学习一段时间,停下来,静心总结一下,甚好.停停走,走走停,一往无前,不摔倒. 一些链接里面是我看到一些人理解后写出来很好的文章然后我转载过来的. 原创博文,大家转载的意欲,请附带上以下信息: 来自:IT`huhui的个人博客 作者:胡伟汇 链接: 原文链接 JAVA内存分配机制 stack (栈) 存放局部变量和方法调用 heap (堆) 存放new出来的对象,实例对象的存在于对象所属的heap空间上…
接上文:Java基础——数组应用之字符串String类 一.StringBuffer类 StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类. 所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入.删除等操作,使用StringBuffer要更加适合一些. 在StringBuffer类中存在很多和String类一样的方…
一.数组基本概念 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组有三个特点: 1. 其长度是确定的.数组一旦被创建,它的大小就是不可以改变的.不可越界,如果越界,则报:ArrayIndexOutOfBoundsException 2. 其元素必须是相同类型,不允许出现混合类型. 3. 数组中的元素可以是任何数据类型,包括基本类型和引用类型. 数组不属于八种基本数据类…
本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web资源,URLDecode和URLEncode用来转换字符串. 本文会写两个例子来演示java网络编程的一些基本用法. 第一个例子,用java实现http get 和 post请求 本例涉及如下知识点, HTT协议规范 使用URL对象建立HTTP协议的网络连接URLConnection对象conn,本…
以下10点为JAVA 基础知识,后面将足以总结和完善以备面试 数据类型 (包装类,字符串,数组) 异常处理 Java IO和NIO 数据结构 (集合和容器 ) 多线程(并发) 网络通信(协议) 面向对象 JVM(内存分布,垃圾回收,类加载机制,反射) JDK源码 JAVA常用包(string,java.concurrent,java.lang ...) 学完上面知识点后, 计划用一些练习去巩固知识 记事本(java.io,  java.nio) 聊天室(多线程,socket, channel,…
1.抽象:  抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象. 2.继承:  继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派生类可以从它的基类那里继承方法和实例变量…
JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象.2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派…
58.线程的基本概念.线程的基本状态以及状态之间的关系线程指在程序执行过程中,能够执行程序代码的一个执行单位,每个程序至少都有一个线程,也就是程序本身.Java中的线程有四种状态分别是:运行.就绪.挂起.结束. 59.JSP的常用指令<%@page language="java" contenType="text/html;charset=gb2312" session="true" buffer="64kb" auto…
最近在整理JAVA 基础知识,从jdk源码入手,今天就jdk中 java.util包下集合类进行理解 先看图 从类图结构可以了解 java.util包下的2个大类: 1.Collecton:可以理解为主要存放的是单个对象 2.Map:可以理解为主要存储key-value类型的对象 一.Collection Collection继承了Iterate接口,Iterate用于集合内迭代器抽象接口,其子类均实现接口中方法,看下ArrayList下实现: /** * Returns an iterator…
Java基础部分 常量和变量的区别:final 关键词修饰的变量是恒定不变的,如果还有static关键词修饰的话,常常称为编译期常量.变量,运行时可以修改其引用. Java基本类似有哪些 1 Byte = 8 Bits (细节地方,这个其实跟机器的位数也是有关系.) String/StringBuffer/StringBuilder的区别:String:字符串常量,字符串长度不可变:StringBuffer(JDK 1.0) 安全(不代表线程就一定安全喔)的可以重复操作的字符串变量:String…
 Java基础语法(下篇) 内容概要:        (1)函数的定义        (2)函数的特点        (3)函数的应用        (4)函数的重载                (5)数组的定义        (6)数组的结构            (7)数组的操作            (8)二维数组 1.函数的定义   什么是函数?         函 数: 为了提高代码的复用性,可以将其定义成一个单独功能,该功能的体现就是java中的函数.函数就是体现之一.    …
很早之前整理的Java基础的一些知识点,思维导图: 1.'别名现象' 对一个对象赋值另一个对象,会指向新的对象引用,赋值前的对象引用会由于不再被引用而被gc回收: 而基本类型则不同.基本类型存储了实际的值,而并非指向一个对象的引用,为其赋值,是将一个地方的内容复制到了另一个地方. 2.== 与 equals 对于==,如果作用于基本数据类型的变量,则直接比较其存储的 "值"是否相等:如果作用于引用类型的变量,则比较的是所指向的对象的地址: 对于equals方法(注意:equals方法不…
Java基础篇: 题记:本系列文章,会尽量模拟面试现场对话情景, 用口语而非书面语 ,采用问答形式来展现.另外每一个问题都附上“延伸”,这部分内容是帮助小伙伴们更深的理解一些底层细节的补充,在面试中可能很少直接涉及,权当是提高自身水平的知识储备吧. 第一部分:java容器相关 1.问:List 和 Set 都有什么区别? 分析:这种问题面试官一般想考察的都是你对这两种数据结构的了解,已经使用时候的选择依据,所以可以从数据结构和一些使用案例入手分别做个介绍 答:List,列表,元素可重复.常用的实…
剑指Offer--知识点储备-Java基础 网址来源: http://www.nowcoder.com/discuss/5949?type=0&order=0&pos=4&page=2 参考资料:(java方面的一些面试答案) http://www.nowcoder.com/discuss/6890?type=0&order=0&pos=29&page=1 http://www.nowcoder.com/discuss/7342 一:java基础 1.jav…
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10748925.html 一.概述 Collector是专门用来作为Stream的collect方法的参数的. public interface Stream<T> extends BaseStream<T, Stream<T>> { <R, A> R collect(Collector<? super T, A, R> collecto…
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10022092.html Java基础系列-HashMap 1.8 概述 HashMap是基于哈希表实现的映射集合. HashMap可以拥有null键和null值,但是null键只能有一个,null值不做限制.HashTable是不允许null键和值的. HashMap是非线程安全的集合,HashTable是添加了同步功能的HashMap,是线程安全的. HashMap是无序的,并不能保…
Collection是描述所有序列容器(集合)共性的根接口,它可能被认为是一个“附属接口”,即因为要表示其他若干个接口的共性而出现的接口.另外,java.util.AbstractCollection抽象类实现了Collection的默认实现,使得我们可以创建AbstractCollection的子类型. 使用接口描述的一个理由是它可以使我们能够创建更通用的代码.通过针对接口而非具体实现来编写代码,我们的代码可以应用于更多的对象类型.如果编写的方法将接受一个Collection,那么该方法就可以…