
Java SE
文章平均质量分 93
Java基础入门,常看常新,查漏补缺,防遗忘
nanyidev
这个作者很懒,什么都没留下…
展开
-
Java SE(十一)之包装类(各种类型之间的转换)
文章目录Object类 &Number类1.Object2.Number类包装类,装箱,拆箱1.手动装箱/拆箱2.自动装箱/ 拆箱应用——常见包装类1.Integer类2.Character类3.实战——各种类型之间的转换(1)int和Integer相互转换(2)基本数据类型转化为String(3)String转化为基本数据类型Object类 &Number类八种基本数据结构都分别有对应的包装类,属于引用数据类型。包装类层次结构如下所以先介绍Object类和Number类1.Obj原创 2023-05-14 12:37:23 · 1158 阅读 · 0 评论 -
Java SE进阶(一)之ArrayList源码分析(底层扩容机制)
本篇文章先回顾一下ArrayList有关特点和常用API,然后介绍重点——ArrayList源码分析(1)特点ArrayList 类实现一个可增长的动态数组,位于。实现了 List 接口,它可以存储不同类型的对象(包括 null 在内),而数组则只能存放特定数据类型的值。存储类型只能存储引用数据类型,如果是基本数据类型,需要用到他们的包装类(2)定义格式// 引入 ArrayList 类 ArrayList < E > objectName = new ArrayList < >();原创 2023-02-07 23:14:22 · 184 阅读 · 0 评论 -
Java SE 进阶(二)之 HashMap&HashSet底层原理
关于Set和HashSet的API使用可参见集合基础入门(Collection,ArrayList,HashSet,HashMap)原创 2023-02-04 15:05:13 · 1009 阅读 · 0 评论 -
Java SE(十四)之 Java 8新特性(Lambda,Stream流,方法引用等)
作用:简化匿名内部类的代码写法首先回顾一下匿名内部类:(为什么要引入匿名内部类?匿名内部类// 首先创建一个接口 interface inter {// 直接使用匿名内部类,重写eat方法并调用 new inter() {System . out . println("正在调用eat方法");} }但是,Lambda看到这里还是觉得不够简便,所以进一步开始简化!Lambda语法:注:-> 是语法形式,无实际含义。原创 2023-03-14 10:10:30 · 533 阅读 · 0 评论 -
Java SE(十)之 网络编程(TCP通信,UDP通信)
TCP通信协议是一种可靠的网络协议,它在通信的两端各建立一个Socket对象,从而在通信的两端形成网络虚拟链路,—旦建立了虚拟的网络链路,两端的程序就可以通过虚拟链路进行通信。Java对基于TCP协议的的网络提供了良好的封装,使用Socket对象来代表两端的通信端口,并通过Socket产生IO流来进行网络通信。端口号:标识正在计算机设备上运行的进程(程序),被规定为一个 16 位的二进制,范围是 0~65535。,接收数据的对象因此对于基于UDP协议的通信双方而言,没有所谓的客户端和服务器的概念。原创 2022-10-06 11:00:26 · 1298 阅读 · 0 评论 -
Java SE(九)之 IO流(字节流,字符流,缓冲流)
I表示intput,把硬盘文件中的数据读入到内存的过程,称之输入,负责读;O表示output,把内存中的数据写出到硬盘文件的过程,称之输出,负责写。File:它是文件和目录路径名的抽象表示文件和目录是可以通过File封装成对象的;File类的对象代表操作系统的文件,File封装了对文件进行:删除、获取信息、创建文件或文件夹等操作。但是不能读写文件内容;对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已(可以存在或不存在)将来是要通过具体的操作把这个路径的内容转换为具体存在的。原创 2022-10-05 22:37:29 · 923 阅读 · 0 评论 -
Java SE(八)之集合基础入门(Collection,ArrayList,HashSet,HashMap)
哈希值是jdk根据对象的。原创 2022-08-31 20:09:14 · 792 阅读 · 0 评论 -
Java SE(七)之泛型(泛型类,泛型接口,泛型方法)
JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。将类型由原来的具体类型参数化,然后在使用/调用时传入具体的类型,这个参数化可以用在类,方法,接口中:指定一种类型的格式:指定多种类型的格式这里的类型在定义的时候可以看成形参;而在之后调用时给定的类型可以看成实参,实参只能是引用数据类型。...原创 2022-08-31 14:07:46 · 1318 阅读 · 0 评论 -
Java SE(六)之面向对象(封装,继承,多态,接口)
抽象方法只包含一个方法名,而没有方法体,方法名后面直接跟一个分号,而不是花括号;抽象类同样也用 abstract 修饰//抽象方法 public abstract 返回值类型 方法名(参数列表);//抽象类 public abstract class 类名 {}首先为什么要有接口?从下图可以看出,动物类按照之前讲的,可以定义为抽象类,里面有“吃饭喝水”抽象方法,这时下面的子类都需要重写这两个方法。但是,”游泳“方法只有“青蛙和狗类”可以重写,所以将其定义为一个接口。什么是接口?接口用于。......原创 2022-08-20 14:01:48 · 1584 阅读 · 0 评论 -
Java SE(五)之 数组(静态初始化,动态初始化,数组操作,Arrays类)
数组是一个固定长度的,包含了相同类型数据的容器。原创 2022-08-29 15:01:18 · 3029 阅读 · 0 评论 -
Java SE(四) 之操作符(算术运算符,位运算符,逻辑运算符,三元运算符等)
梳理了一下运算符,比较重要的(或者说是容易弄错的)有算术运算符中的+,逻辑运算符,位运算符,三目运算符等。原创 2022-10-09 20:45:26 · 729 阅读 · 0 评论 -
Java SE(三)之 字符串(String & StringBuilder)
和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。new创建在堆内存中,两者存储的地址不一样,所以==输出false。至于为什么,就需要看看我们前面说的String创建的几种方式。直接赋值和new出来的字符串有什么不同的呢——系统会检查,不存在,创建新的,存在,复用。直接赋值,String 创建的字符串存储在。......原创 2022-08-20 16:35:54 · 780 阅读 · 0 评论 -
Java SE(二)之 字符集(ASCII,GBK,Unicode,编解码)
注意,如果编解码的方式不同,会造成乱码(例如用GBK编码,用UTF-8解码,因为GBK中一个汉字占两个字节,而UTF-8占三个字节,所以编解码时肯定会造成乱码)因为是UTF-8,所以一个中文占用三个字节,所以总共的长度为15,另外,-27,-101,-67 三个字节表示汉字。在GBK编码中一个汉字占2个字节,在UTF-8编码中一个汉字占3个字节。来表示代表不同的字符,这样电脑就可以根据二进制数来显示其对应的字符。但是不同的字符占用的字节不同,因为存在不同的编码方式。1MB = 1024KB 等等。原创 2022-10-05 10:47:36 · 1412 阅读 · 0 评论 -
Java SE(一)之 数据类型(基本数据类型,引用数据类型)& 数据类型转换
—从内存的角度去理解。原创 2022-08-20 15:39:03 · 777 阅读 · 0 评论