- 博客(22)
- 资源 (2)
- 收藏
- 关注
原创 Map集合
3.1 概述现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图。* Collection`中的集合,元素...
2019-11-29 19:44:24 241
原创 排序算法
我们会使用数组来存储多个数据,有时候我们要将数组中的元素进行排序。比如原始数组为{5, 1, 3, 2},排序后为{1, 2, 3, 5}。常见排序算法有:选择排序,冒泡排序,快速排序等。2.1 冒泡排序冒泡排序原理:相邻元素比较,大的往后放。实现代码public static void main(String[] args) { int[] arr = new int[] {5...
2019-11-29 19:35:48 419
原创 Collections类
1.1 Collections常用功能java.utils.Collections是集合工具类,用来对集合进行操作。常用方法如下:public static void shuffle(List<?> list):打乱集合顺序。public static <T> void sort(List<T> list):将集合中元素按照默认规则排序。pu...
2019-11-29 19:34:42 221
原创 Set接口
6.1 HashSet集合介绍java.util.HashSet是Set接口的一个实现类,它所存储的元素是不可重复的,并且元素都是无序的(即存取顺序不能保证不一致)。java.util.HashSet底层的实现其实是一个java.util.HashMap支持,由于我们暂时还未学习,先做了解。HashSet是根据对象的哈希值来确定元素在集合中的存储位置,因此具有良好的存储和查找性能。保证元素唯一...
2019-11-20 23:53:53 208
原创 List的子类
5.1 ArrayList集合java.util.ArrayList集合数据存储的结构是数组结构。元素增删慢,查找快,由于日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。许多程序员开发时非常随意地使用ArrayList完成任何需求,并不严谨,这种用法是不提倡的。5.2 LinkedList集合java.util.LinkedList集合数据存储的结构是链...
2019-11-20 23:51:36 495
原创 List集合
我们掌握了Collection接口的使用后,再来看看Collection接口中的子类,他们都具备那些特性呢?接下来,我们一起学习Collection中的常用几个子类(java.util.List集合、java.util.Set集合)。4.1 List接口介绍java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会将实现了List接口的对象称为Lis...
2019-11-20 23:50:07 264
原创 数据结构
3.1 数据结构介绍数据结构 : 数据用什么样的方式组合在一起。3.2 常见数据结构数据存储的常用结构有:栈、队列、数组、链表和红黑树。我们分别来了解一下:栈栈:stack,又称堆栈,它是运算受限的线性表,其限制是仅允许在标的一端进行插入和删除操作,不允许在其他任何位置进行添加、查找、删除等操作。简单的说:采用该结构的集合,对元素的存取有如下的特点先进后出(即,存进去的元素,...
2019-11-20 23:48:55 207
原创 集合综合案例
2.1 案例介绍按照斗地主的规则,完成洗牌发牌的动作。具体规则:使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。2.2 案例分析准备牌:牌可以设计为一个ArrayList,每个字符串为一张牌。每张牌由花色数字两部分组成,我们可以使用花色集合与数字集合嵌套迭代完成每张牌的组装。牌由Collections类的shuffle方法进行随机排序。...
2019-11-20 23:44:43 381
原创 Iterator迭代器
1.1 Iterator接口在程序开发中,经常需要遍历集合中的所有元素。针对这种需求,JDK专门提供了一个接口java.util.Iterator。想要遍历Collection集合,那么就要获取该集合迭代器完成迭代操作,下面介绍一下获取迭代器的方法:public Iterator iterator(): 获取集合对应的迭代器,用来遍历集合中的元素的。下面介绍一下迭代的概念:迭代:即...
2019-11-20 23:43:21 157
原创 Collection集合
7.1 集合概述在前面基础班我们已经学习过并使用过集合ArrayList ,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有什么区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储任意类型数据。集合存储的都是引用数据类型。如果想存储基本类型数据需要存储对应的包装类型。7.2 集合...
2019-11-14 00:06:44 219 1
原创 泛型
6.1 泛型概述在前面学习集合时,我们都知道集合中是可以存放任意对象的,只要把对象存储集合后,那么这时他们都会被提升成Object类型。当我们在取出每一个对象,并且进行相应的操作,这时必须采用类型转换。大家观察下面代码:public class GenericDemo { public static void main(String[] args) { Collection coll...
2019-11-14 00:05:37 174
原创 包装类
5.1 概述Java提供了两个类型系统,基本类型与引用类型,使用基本类型在于效率,然而很多情况,会创建对象使用,因为对象可以做更多的功能,如果想要我们的基本类型像对象一样操作,就可以使用基本类型对应的包装类,如下:基本类型对应的包装类(位于java.lang包中)byteByteshortShortintIntegerlongLongfloa...
2019-11-14 00:01:53 112
原创 StringBuilder类
4.1 字符串拼接问题由于String类的对象内容不可改变,所以每当进行字符串拼接时,总是会在内存中创建一个新的对象。例如:public class StringDemo { public static void main(String[] args) { String s = "Hello"; s += "World"; System....
2019-11-14 00:00:25 136
原创 BigDecimal类
loat和double类型是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确,这时候BigDecimal就派上大用场啦。public class Demo23 { public static void main(String[] args) { System.o...
2019-11-13 23:58:24 167
原创 System类
java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有:public static long currentTimeMillis():返回以毫秒为单位的当前时间。public static void arraycopy(Object src, int srcPos, Object dest, int des...
2019-11-13 23:56:35 123
原创 日期时间类
1.1 Date类概述java.util.Date类 表示特定的瞬间,精确到毫秒。继续查阅Date类的描述,发现Date拥有多个构造函数,只是部分已经过时,但是其中有未过时的构造函数可以把毫秒值转成日期对象。public Date():分配Date对象并初始化此对象,以表示分配它的时间(精确到毫秒)。public Date(long date):分配Date对象并初始化此对象,以表示自...
2019-11-13 23:55:11 390
原创 Objects类
Objects类是对象工具类,它里面的的方法都是用来操作对象的。6.1 equals方法在刚才IDEA自动重写equals代码中,使用到了java.util.Objects类,那么这个类是什么呢?在JDK7添加了一个Objects工具类,它提供了一些方法来操作对象,它由一些静态的实用方法组成,这些方法是null-save(空指针安全的)或null-tolerant(容忍空指针的),用于计算对...
2019-11-09 23:22:48 353
原创 Object类
5.1 概述java.lang.Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。在对象实例化的时候,最终找的父类就是Object。如果一个类没有特别指定父类, 那么默认则继承自Object类。例如:public class MyClass /*extends Object*/ { // ...}根据JDK源代码及Object类的API文档,...
2019-11-09 23:21:51 161
原创 代码块
4.1 引入类有且仅有五大成分: 1.成员变量 2.构造器 3.成员方法 4.代码块 5.内部类我们已经学完了成员变量,构造器,成员方法,接下来我们来介绍以下代码快,代码块按照有无static可以分为静态代码块和实例代码块。4.2 静态代码块静态代码块 必须有static修饰,必须放在类下。与类一起加载执行。格式st...
2019-11-09 23:19:27 173
原创 包和权限修饰符
3.1 包包我们每天建的项目就是在一个目录下,我们每次都会建立一个包,这个包在磁盘下其实就是一个目录。包是用来分门别类的管理技术,不同的技术类放在不同的包下,方便管理和维护。在IDEA项目中,建包的操作如下:包名的命名规范:路径名.路径名.xxx.xxx包名必须用”.“连接。包名的每个路径名必须是一个合法的标识符,而且不能是Java的关键字。3.2 权限修饰符在Java中提...
2019-11-09 23:17:45 180
原创 内部类
2.1 概述2.1.1 什么是内部类将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类。可以把内部类理解成寄生,外部类理解成宿主。内部类是Java类的五大成份之一,也是我们最后一个需要学习的成份。2.1.2 什么时候使用内部类一个事物内部还有一个独立的事物,内部的事物脱离外部的事物无法独立使用人里面有一颗心脏。汽车内部有一个发动机。为了实现更好的封装性。...
2019-11-09 23:15:24 162
原创 多态
1.1 多态的形式多态是继封装、继承之后,面向对象的第三大特性。多态是出现在继承或者实现关系中的。多态体现的格式:父类类型 变量名 = new 子类/实现类构造器;变量名.方法名();多态的前提:有继承关系,子类对象是可以赋值给父类类型的变量。例如Animal是一个动物类型,而Cat是一个猫类型。Cat继承了Animal,Cat对象也是Animal类型,自然可以赋值给父类类型的变量。...
2019-11-09 23:09:50 183
npp.7.5.8.Installer.x64.rar
2019-09-24
jdk-11_windows-x64_bin.rar
2019-09-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人