- 博客(18)
- 收藏
- 关注
原创 java遍历集合方法汇总
遍历List集合 package com.boker.Collection; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class TestIterator { public static void main(String[] args) { //遍历List ...
2019-10-09 17:40:14
201
原创 java Set接口(2)
TReeSet TReeSet底层使用了TreeMap实现,大家可以看一下JDK的源码,他的内部维持了一个简化版的TreeMap,通过key来存储Set的元素,TreeSet内部需要对存储的元素进行排序,因此我们对应的类需要实现Comparable接口,这样才能进行内部排序 TreeSet的应用(排序) package com.boker.Collection; import java.ut...
2019-10-09 16:30:24
141
原创 java Set接口(1)
Set接口概述 Set接口和list接口相似,都继承了Collection接口,而set接口中没有太多的新增方法,所以它的方法大多数和list差不多 Set接口特点 set容器的特点:无序的,不可重复,set容器中只能放一个null元素 set的常用类有HashSet、TreeSet等 Set底层实现 HashSet是采用哈希算法实现的,底层实际是使用HashMap实现的(HashSet其...
2019-10-09 15:46:03
184
原创 实现简单的HashMap
HashMap概述 HashMap底层实现是采用了哈希表,属于一种基本的数据结构,而哈希表的基本结构是“数组+链表”之前我们说到数组和链表,它们之间的优缺点如下 数组的查询速度快,增删效率低 链表的增删效率高,查询速度低 这里我们想如何才能把这两者的优势集中起来呢?于是哈希表就出来了。 我们手写一个HashMap类来看一下存储原理 package com.boker.Collectio...
2019-10-09 15:39:24
175
原创 java Map接口
Map接口概述 Map的存储方式为键值对存储方式(“键(key)—— 值(value)”)在查找元素时,通过遍历键来查找对应的值,这种存储方式类似于身份证,一个身份证号对应着一个公民,这里的键和身份证号一样,所以键是不能重复的 Map接口的实现类有HashMap,TreeMap,HashTable,等 Map接口的常用方法: 示例1: import java.util.HashMap; ...
2019-10-09 14:15:52
134
原创 java List接口(3)
Vector vector和ArrayList底层一样都是用数组实现的,但是他和其他两种的区别是:增删查改的效率都很低,但是他的线程安全,一些相关的方法都使用了synchronize修饰,增加了同步检查 例如: 对于ArrayList,LinkedList和Vector的使用建议 1. 如果只考虑线程同步不考虑性能的问题的话,用Vector(尽量少用); 2. 在不考虑线...
2019-10-05 11:31:01
87
原创 java List接口(2)
LinkedList LinkedList底层采用双向链表实现存储,他的特点是:查询效率低,增删效率高,线程不安全 双向链表:也叫双链表,是链表的一种,他的每个数据节点都有两个指针,这两个指针分别指向前一个节点和后一个节点,所以在增加或删除某一个数据对象时,只需要找到这两个节点,把这两个节点断开再添加或删除数据就可以了,类似于小朋友手拉手,要在中间加一个小朋友只需要把中间的两个小朋友的手放...
2019-10-05 10:40:24
108
原创 java List接口(1)
List接口概述 list是有序的,可重复的容器 有序:list的每个元素都有索引标记。可以根据元素的索引标记(在list中的位置)访问元素, 从而达到精准控制这些元素 可重复:list允许加入重复的元素,确切的讲,list通常允许满足c1.equals(c2)的元素重复添加至容器 list常用的三个实现类:ArrayList、LinkedList和Vector ArrayList A...
2019-10-03 18:00:09
136
原创 java Collection接口的常用方法
Collection的方法 上次说到容器的大致结构图,因为set和list以及他们的类都实现了collection接口的所有方法,所以我们在这重点讲述collection方法 下面是对当前集合的一些方法 代码示例 package com.boker.Collection; import java.util.ArrayList; import java.util.Collection; pub...
2019-10-03 13:18:16
299
原创 java基础——关键字final
final:最终的,最后的 final在不同的场景下的意义是不同的,但是大致来说,它是不可被更改的,final一般作用于三个场景 1. 当变量被final修饰的时候 public class TestFinal { final int AGE = 12; } 在使用final修饰变量的时候应该注意以下几点: 用final修饰的变量就变成了常量,在后期是不可不更改的 当一个变量声明为常量的后,...
2019-09-23 13:03:56
116
原创 Java基础——接口(Interface)
接口概念 1、接口是比“抽象类”更加“抽象”的“抽象类”,可以更加规范的对子类进行约束,全面的专业的实现了:规范和实现的分离 2、接口是两个模块之间通信的标准和规范 3、抽象类会包含一些普通的方法,接口的方法只能且只有抽象方法,而且无论你写与不写,都会自动的加上public这一访问修饰符,接口也可以定义属性,但是定义的属性都是默认的为public的静态常量 4、接口本质就是规范,定...
2019-09-22 21:41:27
145
原创 java面向对象基础——多态
java面向对象基础——多态 多态的概念 多态指的是同一个方法的调用,由于对象的不同可能会有不同的行为,而在现实生活中,同一种方法,具体实现可能会有所不同,比如人的休息方法,有躺着睡觉,也有躺着玩手机,等不同的行为方法 多态的好处 可替换性。多态对已存在代码具有可替换性。 可扩展性。多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。 灵活性。它在应用中...
2019-09-22 14:39:26
265
1
原创 java面向对象基础——封装
java面向对象基础——封装 封装的概念: 把对象的属性和功能结合作为一个独立的整体,并尽可能的隐藏对象的内部实现细节,比如在家看电视,电视机制造商把一些复杂的东西全部给封在电视机的后壳里,不让用户去更改,我们只需要按遥控器上的按钮就行了,而不需要管其内部是怎么实现的,有什么样的功能,晶体管是怎么显像的,我们都不需要管,所以简单来说,需要让用户知道的,我们就把他显示出来,不需要让用户知道的,我们就...
2019-09-22 13:12:21
350
原创 Java基础——抽象类(abstract)
抽象类(abstract) 概念 abstract修饰符可以用来修饰类和方法 用abstract修饰的类表示抽象类,抽象类是不能被实例化的,而没有使用abstract修饰的类称为具体类,具体类可以实例化 用abstract修饰的方法表是抽象方法,抽象方法是没有方法体的,不提供方法的实现,而没有用abstract修饰的方法称为具体方法,具体方法可以具有方法体 特点 如果一个类中有抽象方法,那么这个...
2019-09-20 18:01:27
343
1
原创 java面向对象基础——继承
Java面向对象——继承(extends) 继承的概念:如果一个类A“继承自”另一个类B,就把这个类A称为类B的子类,而把B类称为A类的父类也可以称B是A的派生类 继承的优点:继承可以使得子类获得父类的一些属性和方法,从而不需要再次编写相同的代码,减少代码的重复,便于维护,在生活角度来看的,继承相当于儿子继承了父亲的一些特征和能力 注意事项: 子类拥有父类的属性和方法,而父类没有子类的属性和方法...
2019-09-20 10:03:40
275
原创 java基础——方法
方法 一、方法的定义 方法是指一段用来完成特定功能的代码片段,在其他的语言里方法又被称为函数 1、为什么要有方法 1.用于处理程序中多次用到的功能 2.为了便于阅读程序 3.提高程序重用性 2、方法的声明和调用 声明 访问修饰符 返回值类型 方法名(参数类型 参数名); //此时这里的参数是形式参数 public void show(int parameter1,int parameter...
2019-09-14 12:33:09
296
2
原创 Java面向对象基础(Object Oriented)
简介 面向对象简称 OO(Object Oriented),20 世纪 80 年代以后,有了面向对象分析 OOA(Object Oriented Analysis)、 面向对象设计 OOD (Object Oriented Design)、面向对象程序设计 OOP(Object Oriented Programming)等新的系统开发方式模型的研究。 一,对象(Object)是什么? 对象的定义...
2019-09-13 13:47:30
403
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人