javaSE
文章平均质量分 78
参考书籍:java 2实用教程 第五版
GuochaoHN
Take nothing for granted. Know that the harder you work, the luckier you'll get.
展开
-
DFS、BFS的区别
面试问题:请说一下BFS和DFS在算法实现上的本质区别?BFS用队列来记住下一个节点,DFS用栈来记录下一个节点。原创 2022-05-17 19:59:48 · 248 阅读 · 0 评论 -
BigInterger、BigDecimal的使用
目录BigIntegerBigDecimalimport org.junit.Test;import java.math.BigInteger;import java.util.*;/** * @author guochao * @date 2022/4/9 */public class Main { static BigInteger resInteger = new BigInteger("0"); public static void main(String[] a原创 2022-04-09 20:04:41 · 690 阅读 · 0 评论 -
二叉树——二叉查找树、平衡二叉树(红黑树)
王争——数据结构与算法之美原创 2022-03-05 22:45:09 · 1756 阅读 · 0 评论 -
Java——Lambda表达式
目录lambda表达式lambda表达式1、什么是lambda?Lambda 是一个匿名函数,我们可以把 Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使Java的语言表达能力得到了提升。(类似于创建一个接口的匿名实现类)Lambda 表达式在Java 语言中引入了一个新的语法元素和操作符。这个操作符为 “->” , 该操作符被称为 Lambda 操作符或剪头操作符。它将 Lambda 分为两个部分:左侧:指原创 2022-01-10 22:01:58 · 345 阅读 · 0 评论 -
Java中的UML图
目录关联关系依赖关系关联关系如果A类中的成员变量是用B类声明的对象,那么A和B的关系是关联关系,称A类的对象关联于B类的对象或A类的对象组合了B类的对象。依赖关系如果A类中某个方法的参数是用B类声明的对象或某个方法返回的数据类型是B类对象,那么A和B的关系是依赖关系,称A依赖于B。...原创 2022-01-10 21:29:59 · 1167 阅读 · 0 评论 -
Java——equals和==的区别
equals和==的区别==这两个都是用来判断两个值是否相等,具体判断的是什么值,下面具体分析。在此之前一定要明白基本数据类型和引用数据类型是如何被存储在JVM内存模块中的。==== 比较的是存储在栈中的值。在此之前还要说明一点:jvm当中有一个存储区域叫做字符串常量池(在堆当中),通过:String 对象名 =new String(); 我们知道在堆中会创建一个字符串对象, 返回的是堆数据地址(存储在栈中)。除此之外,还会查看常量池有没有这个字符串,没有的话就创建一个。下面通过几个例子来了解一下原创 2021-06-22 12:51:43 · 131 阅读 · 0 评论 -
Java——项目中文件路径名不同写法
目录绝对路径类路径通过类加载器获取src路径绝对路径在读取文件路径时,万能的方法就是使用绝对路径,但是不建议使用,因为不同开发者所以使用的项目和资源路径必定不同,代码的移植性很低。@Test public void test1() throws IOException{ FileReader fr = new FileReader("E:\\IDEA\\workspace\\project01\\JavaSE\\src\\source\\jdbc.txt"); Buffere原创 2021-10-11 21:05:19 · 1106 阅读 · 0 评论 -
Java——Class对象(反射及其应用)
目录定义如何获取Class对象(1)类名.class(2)对象.getClass()(3)Class.forName("类型全名称")(4)类加载器对象.loadClass("类型全名称")反射反射的应用运行时获取任意类型的详细信息定义java.lang.Class类型:所有的Java类型(包括基本数据类型、引用数据类型、void)被加载到内存后,或者是编译器自动编译生成的class字节码,最终都会用一个Class对象来表示。 即,所有的Java类型,在内存中都表示为一个Class对象。如何获取C原创 2021-10-14 16:18:00 · 360 阅读 · 0 评论 -
Java——泛型
目录定义:使用:泛型的形式一:泛型类与泛型接口泛型的形式二:泛型方法定义:泛型:JDK1.5之后引入的。(泛化的类型,参数化类型)泛型:<类型>例如:< String>,< Integer>…Java中:例如:在设计集合这个容器的数据结构时,不知道我们程序员会用它来装什么对象。 可能用它装字符串对象,可能用它装Apple对象…在设计时不确定元素的类型,但是在使用时,程序员是知道类型的。现在需要一个方式,渠道,让使用者在使用这个集合等时,告知这个集合我里面装原创 2021-10-07 16:09:56 · 161 阅读 · 0 评论 -
Java——网络编程(TCP/UDP通信)
目录URL类套接字URL类一个URL对象包含最基本的三部分信息:协议、地址、资源套接字原创 2021-09-20 23:03:34 · 267 阅读 · 0 评论 -
Java——异常处理(详解)
目录定义概念:异常类型异常处理:try...catchtry...catch finally定义概念:所谓异常就是程序运行时可能出现的一些错误,比如试图打开一个根本不存在的文件、配置问题、错误输入等问题,异常处理将会改变程序的控制流程,让程序有机会对错误做出处理。语法错误和逻辑错误不是异常。java异常处理过程:(1)当程序运行到某一句时,发生了异常,那么程序会先停下来(2)程序会在这句代码处,查看原因,生成一个合理“异常对象”,然后“抛”出(3)JVM会检测在这句代码的外围,是否有try…c原创 2021-09-30 16:11:43 · 2652 阅读 · 0 评论 -
Java——(I/O)输入、输出流
目录原创 2021-09-21 20:03:46 · 363 阅读 · 0 评论 -
Java——注解(基本注解、文档注解(导出javadoc)、JUnit注解(单元测试))
目录三个系统基本注解文档注解导出JavaDoc文档(IDEA)JUnit注解三个系统基本注解注解:也是一种注释。它是代码级别的注释。是用代码注释代码。不同于我们之前的单行注释//,多行注释/* * /2、一个完整的注解,由三部分组成:(1)声明(2)使用(3)读取3、系统中预定义的三个最基本的注解(1)@Override作用:检查这个方法是否符合重写的要求①方法名:相同②形参列表:相同③返回值类型基本数据类型和void:相同引用数据类型:<=④修饰符权限修饰符:&g原创 2021-10-06 11:23:25 · 335 阅读 · 0 评论 -
Java——枚举
目录枚举枚举JDK1.5引入,java枚举就是把某个类型的对象全部罗列出来,当某个类型的对象是固定的、有限的,那么就可以选择使用枚举。在整个系统运行期间,有且只有这几个对象。例如:性别 Gender,他的对象只有三个:男、女、人妖星期:周一到周六季节:春夏秋冬支付系统:Alipay、card 、cash… …...原创 2021-09-22 12:25:25 · 218 阅读 · 0 评论 -
Java——接口与实现类
目录接口实现接口接口使用关键字interface来定义一个接口。定义接口包含接口声明和接口体接口体:常量声明(final)和抽象方法(abstract)。 (没有变量,没有普通方法)所有常量的访问权限一定都是public,且为static常量。所有抽象方法的访问权限一定都是public。interface Printable{public static原创 2021-09-22 22:51:59 · 20949 阅读 · 0 评论 -
Java——内部类
目录定义与分类定义与分类定义在另外一个类里面的类,就叫做内部类,为了区别,把外面的类称为外部类。根据内部类的所在的位置不同:(1)成员内部类:外部类中方法外有static修饰的:静态成员内部类,我们通常就简称为静态内部类没有static修饰的:非静态成员内部类,我们通常就简称为成员内部类(2)局部内部类:方法体内有名字的局部内部类:简称局部内部类没名字的局部内部类:简称匿名内部类...原创 2021-09-28 16:06:35 · 486 阅读 · 0 评论 -
Java——包装类
八个基本数据类型的包装类装箱,拆箱包装类的常量池八种基本数据类型并不支持面向对象编程,基本类型的数据不具备“对象”的特性——不携带属性、没有方法可调用。使用包装类可以简单、有效地进行常规数据处理。引用类型数据均继承了 Object 类的特性,要转换为 String 类型(经常有这种需要)时只要简单调用 Object 类中定义的toString()即可,而基本数据类型转换为 String 类型则要麻烦得多。装箱,拆箱基本数据类型对应包装类byteByteshortShort原创 2021-06-22 18:49:05 · 98 阅读 · 0 评论 -
Java——System.arraycopy方法介绍
和数组有关的常用的方法:java.lang.System类public static native void arraycopy(Object src, int srcPos,Object dest, int destPos,int length);第一个参数:src 原数组对象第二个参数:srcPos 从原数组的[srcPos]下标开始复制第三个参数:dest 目标数组对象第四个参数:destPos 目标数组从[destPos]开始存储第五个参数:length 表示从原数组复制原创 2021-10-07 21:18:24 · 124 阅读 · 0 评论 -
Java——数组工具类Arrays及常用方法
(1)public static int binarySearch(int[] a,int key)使用二分搜索法来搜索指定的 int 型数组,以获得指定的值。要求数组是有序的,否则结果不确定。(可以通过sort(int[])方法)如果key在a数组中存在,就返回找到的第一个的下标,如果不存在返回负数。 @Test public void test02() { int[] arr = {1,3,5,7,9}; System.out.println(Arrays原创 2021-10-07 21:06:27 · 187 阅读 · 0 评论 -
正则表达式基本语法速查
目录正则表达式基本语法'^' ,'$'。'*','+','?'正则表达式基本语法‘^’ ,’$’。’^’:指出一个字符串的开始。“^The”:表示所有以"The"开始的字符串(“There”,"The cat"等);’$ ':指出一个字符串的结束。“of despair$”:表示所有以"of despair"结尾的字符串;“^abc$”:表示开始和结尾都是"abc"的字符串——只有"abc"自己;“notice”:表示任何包含"notice"的字符串。‘*’,’+’,’?’’*’:表示没原创 2021-11-17 16:25:40 · 657 阅读 · 0 评论 -
Java——常用类String及常用方法
这里写目录标题原创 2021-10-16 22:35:28 · 526 阅读 · 0 评论 -
Java——根父类Object及常用方法(toString、getClass、hashcode)
目录定义根父类常用方法(1)public String toString()(2)public final Class getClass():(3)protected void finalize():(4)public int hashCode():(5) public boolean equals(Object obj):定义Java中规定:如果一个类没有显式声明它的父类(即没有写extends xx),那么默认这个类的父类就是java.lang.Object。类 Object 是类层次结构的根类。原创 2021-10-07 22:24:05 · 238 阅读 · 0 评论 -
Java——类和对象(类的继承、重载与重写、对象转型、关键字abstract)
Java 类的继承、对象转型目录Java 类的继承、对象转型类的继承构造器方法方法重写对象转型向上转型应用场景向下转型类的继承java当中一个类可以被另一个类通过关键字extends继承,继承的类成为子类或派生类,被继承的类成为父类、基类或者超类。eg:public class UNStudent extends Student{}子类: UNStudent 父类: UNStudent现在有一个父类Studentpublic class Student { private原创 2021-06-12 17:33:09 · 2463 阅读 · 0 评论 -
Java——类和对象(成员变量、方法、初始化、访问权限)
目录类和对象成员变量实例变量类变量(static静态变量)方法实例方法类方法(static静态方法)面向对象编程将数据和对数据的操作封装在一起。面向对象编程主要体现下列三个特性:封装性、继承、多态类和对象类的目的是抽象出一类事物共有的属性和行为。成员变量用来表示类的属性。方法用来表示类的行为。万物皆可归类,且根据归类的细化程度既可合并成一类,也可分离成多类。鸟有翅膀会飞为一类,鱼有鳃会游水为一类。将鸟细化,雄鸟一类,雌鸟一类;将雄鸟细化… …… …将细胞细化… …… …同时万物原创 2021-09-09 00:08:32 · 679 阅读 · 0 评论 -
Java——运算符
目录运算符与表达式运算符综述部分解释:instanceof运算符:位运算符:(用于整型数据运算或逻辑运算)运算符与表达式运算符综述算数混合运算的精度:byte<short<char<int<long<float<doubleJava在计算算术表达式的值时,使用下列运算精度规则:1.最高精度大于等于int型整数(int、long、float、double),按表达式中的最高精度运算。eg:12L+100.0+‘a’ 结果是209.0是double型数据。2原创 2021-09-04 00:22:21 · 363 阅读 · 0 评论 -
Java数据结构——基本数据类型
目录八大基本数据类型逻辑类型:boolean整数类型(4种)byte(1字节)int(4字节)八大基本数据类型boolean、byte、short、char、int、long、float、double逻辑类型:boolean常量:true,false变量:使用关键字boolean来声明逻辑变量,声明时可以赋初值boolean male=true;整数类型(4种)byte(1字节)取值范围:-2^7~ 2^7-1不存在byte型常量,但是可以将一定范围内的int型常量赋值给byte型变量原创 2021-09-02 17:09:58 · 566 阅读 · 0 评论 -
Java——Java开发环境JDK、JRE、JVM
Java开发环境了解设置环境变量JDK、JRE、JVM设置环境变量一般情况下,要运行程序,需要找到运行文件的目录,点击运行。配置环境变量后,在整个系统任何路径下都可以使用命令的方式来运行程序。这里用 javac java 命令文件来运行和编译相应文件,是因为环境变量设置的是这两个命令文件的所在的文件目录,在控制台输入这些命令,会先在本地目录去寻找,然后去环境变量设置的路径去寻找,最终找到他们并运行。由此看来我们设置的环境变量应该是我们经常所用到的文件所在的文件目录(绝对路径)。设置方法:JAVA原创 2021-06-19 00:05:48 · 559 阅读 · 0 评论