自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

转载 MySQL知识点总结

杜老师mysql课程笔记

2023-02-17 21:19:26 340

原创 Java - Arrays类

Arrays里面包含了一系列静态方法,用于管理或操作数组(比如排序和搜索)1) toString返回数组的字符串形式 Arrays.toString(arr)public static void main(String[] args) { Integer[] integers = {1,23,45}; System.out.println(Arrays.toString(integers)); }2) sort排序(自然排序和定制排序) ln...

2022-03-28 17:26:59 150

原创 Java - Math类

常用方法

2022-03-28 16:04:04 542

原创 Java - StringBuilder

基本介绍一个可变的字符序列。此类提供一个与 StringBuffer 兼容的API,但不保证同步(StringBuilder 不是线程安全)。该类被设计用作 StringBuffer的一个简易替换,用在字符串缓冲区被单个线程使用的时候。如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快[后面测]。 在 StringBuilder上的主要操作是append和insert方法,可重载这些方法,以接受任意类型的数据。StringBuilder常用方法StringB

2022-03-28 15:46:51 346

原创 Java - StringBuffer

基本介绍java.lang.StringBuffer代表可变的字符序列,可以对字符串内容进行增删。 很多方法与String相同,但StringBuffer是可变长度的。 StringBuffer是一个容器。

2022-03-28 15:38:47 299

原创 Java - String

StringString对象用于保存字符串,也就是一组字符序列 字符串常量对象是用双引号括起的字符序列。例如:“你好"、“12.97"."boy"等 字符串的字符使用Unicode字符编码,一个字符(不区分字母还是汉字)占两个字节. String类较常用构造器(其它看手册);String s1 = new String0;/ String s2 = new String(String original); String s3 = new String(charla); String s

2022-03-28 14:39:57 63

原创 Java - 包装类

包装类的分类 Wrapper针对八种基本数据类型相应的引用类型——包装类 好处:有了类的特点,就可以调用类中的方法包装类和基本数据类型的转换(以int与Integer为例)jdk5前的手动装箱和拆箱方式,装箱:基本类型=》包装类型;拆箱反之 jdk5后的自动装箱和拆箱方式 自动装箱底层调用的是valueOf方法,比如Integer.valueOf()public class Integer01 { public static void main(Strin...

2022-03-24 16:35:54 626

原创 Java-异常

异常引出处理方法:try - catch基本概念Java语言中,将程序执行中发生的不正常情况成为“异常”。(开发过程中的语法错误和逻辑错误不是异常)执行过程中所发生的的异常事件可以分为两类Error(错误):Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源耗尽等严重情况。比如StackOverflowError【栈溢出】和OOM【out of memory】,Error是严重错误,程序会崩溃。 Exception:其他因编程错误或偶然的外在因素导致的一般性问题,可以

2022-03-21 21:41:15 443

原创 Java-注解

注解(annotation)也被称为元数据(Metadata),用于修饰解释包、类、方法、属性、构造器、局部变量等数据信息。 和注释一样。注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息 在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等。在JavaEE中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替JavaEE旧版中所遗留的冗余代码和XML配置等基本的Annotation介绍使用Annotation时要在其前面增加@符号,并把该Anno

2022-03-21 20:52:36 244

原创 Java - enum枚举

枚举的引出枚举(enumeration,简写enum) 枚举是一组常量的集合 枚举属于一种特殊的类,里面只包含一组有限的特定的对象 枚举对象一般采用全大写public class Enumeration01 { public static void main(String[] args) { Season spring = new Season("春天","温暖"); Season winter = new Season("冬天","寒冷");

2022-03-21 20:25:33 267

原创 Java-内部类详解

基本介绍一个类的内部又完整的嵌套了另一个类结构。被嵌套的类称为内部类(inner class),嵌套其他类的类称为外部类(outer class)。是我们类的第五大成员(属性,方法,构造器,代码块,内部类),内部类的最大特点就是可以直接访问私有属性,并且可以体现类与类之间的包含关系。基本语法class Outer{ //外部类 class Inner{ //内部类 }}class Other{ //外部其他类}内部类的分类定义在外部类局部位置上

2022-03-20 21:51:02 92

原创 Java - 实现接口VS继承类

接口和继承解决的问题不同继承的价值主要在于:解决代码的复用性和可维护性 接口的价值主要在于:设计,设计好各种规范(方法),让其他类去实现这些方法,即更加的灵活接口比继承更加灵活接口比继承更加灵活,继承是满足is-a的关系,接口只需要满足like-a的关系接口在一定程序上实现代码解耦合【接口规范性+动态绑定】...

2022-03-18 15:31:17 149

原创 Java-接口

基本介绍接口就是给出一些没有实现的方法,封装到一起,到某个类要使用的时候,再根据具体情况把这些方法写出来。语法:interface 接口名{//属性//方法(1.抽象方法 2.默认实现方法 defalut 3.静态方法)}class 类名 implements 接口{ 自己属性; 自己方法; 必须实现的接口的抽象方法;}在jdk7.0以前,接口里所有方法都没有方法体,全都是抽象方法 在jdk8后接口可以有静态方法

2022-03-18 14:54:19 56

原创 JAVA抽象类

抽象类的引出当父类的某些方法,需要生命,但是又不确定如何实现时,可以将其生命为抽象方法,那么这个类就是抽象类。抽象类的介绍用abstract 关键字修饰一个类时,这个类就叫抽象类 访问修饰符 abstract 类名{ } 用abstract 关键字修饰一个方法时,这个类就叫抽象方法 ...

2022-03-18 09:42:21 301

原创 JAVA中的final关键字

final 可以修饰类,属性,方法和局部变量在某些情况下,程序员可能有以下需求,就会使用到final:当不希望类被继承时 当不希望父类的某个方法被子类覆盖/重写时 当不希望类的某个属性的值被修改时 当不希望某个局部变量被修改时final使用细节final修饰的属性又叫常量,一般用 XX_XX_XX来命名 final修饰的属性在定义时必须赋值,并且以后不能再修改。赋值可以在如下位置之一 (1)定义时 (2)在构造器中 (3)在代码块中 如果final修饰...

2022-03-16 20:45:05 59

原创 单例设计模型

设计模式是在大量的实践中总结和理论化之后的优选的代码结构、编程风格、以及解决问题的思考模式。单例设计模式主要分为:饿汉式与懒汉式

2022-03-16 16:20:14 335

原创 java代码块

1.代码块定义代码块可以看做只有方法体的方法,是对构造器的一种补充机制 static代码块也叫静态代码块,作用就是 对类进行初始化,它随着类的加载而执行,并且只会执行一次。 普通代码块,每创建一个对象就被执行一次。2.类什么时候被加载创建对象实例时(new) 创建子类对象实例,父类也会被加载 使用类的静态成员时(静态属性,静态方法)3.创建一个对象时,在一个类中的调用顺序是调用静态代码块和静态属性初始化(静态代码块和静态属性初始化调用的优先级一样,如果有多个静态代码块和多个静态变

2022-03-14 20:28:19 340

原创 使用IDEA进行java断点调试

介绍:断点调试是指在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看到各个变量当前的值,出错的话,调试到错误的代码行即显示错误,停下。进而分析找到这个bug。 断点调试能帮助查看java底层源代码的执行过程,提高水平。快捷键F7 (跳入) F8 (跳过) shift + F8 (跳出) F9 (resume,执行到下一个断点) F7跳入方法内 F8 逐行执行代码 shift + F8 跳出方法...

2022-03-13 11:48:23 734

原创 toString方法

默认返回:全类名+@+哈希值的十六进制,子类往往重写toString方法,用于返回对象的属性信息重写toString方法,打印对象或拼接对象时,都会自动调用该对象的toString形式 当直接输出一个对象时,toString方法会被默认的调用重写toString方法用于输出对象的属性IDEA快捷键alt+insert -> toString当直接输出一个对象时,toString方法会被默认的调用,比如 System.out.println(monster);

2022-03-13 10:57:17 389

原创 java中equals与==的对比

==是一个1.==:既可以判断基本类型,又可以判断引用类型2.==:如果判断基本类型,判断的是 值是否相等3.==:如果判断引用类型,判断的是 地址是否相等,即判定是不是同一个对象equals方法4.equals:是Obeject类中的方法,只能判断引用类型5.默认判断的是地址是否相等,子类中往往重写该方法,用于判断内容是否相等。比如Integer,String...

2022-03-12 21:57:56 54

原创 JAVA中的动态绑定机制

1.当调用对象方法的时候,该方法会和该对象的内存地址/运行类型绑定2.当调用对象属性的时候,没有动态绑定机制,哪里声明哪里使用

2022-03-12 20:57:36 183

原创 面向对象编程-多态

多态基本介绍方法或者对象有着多种形态。是面向对象的第三大特征,多态是建立在封装和集成基础上的。多态具体体现1.方法的多态重写与重载就体现多态2.对象的多态(重点)(1)一个对象的编译类型与运行类型可以不一致(2)编译类型在定义对象时,就确定了,不能改变(3)运行类型是可以变化的(4)编译类型看定义时 = 号的左边,运行类型看 = 的右边...

2022-03-07 21:55:10 209

原创 JAVA中重载(overload)与重写(override)的区别

2022-03-07 21:11:25 105

原创 JAVA中的方法重写/覆盖(override)

简单地说,方法覆盖就是子类有一个方法,和父类的某个方法的名称,返回类型,参数一样,那么我们就说子类的这个方法覆盖了父类的那个方法

2022-03-07 21:08:01 616

原创 JAVA中super和this的比较

2022-03-07 20:41:37 129

原创 java中super关键字

super代表父类的引用,用于访问父类的属性、方法、构造器基本语法:1.访问父类的属性,但不能访问父类的private属性 super.属性名;2.访问父类的方法不能访问父类的private方法 super.方法名(参数列表);3.访问父类的构造器(这点前面用过): super(参数列表);只能放在构造器的第一句,只能出现一句!...

2022-03-07 20:38:28 225

原创 面向对象编程-继承

1.子类继承了所有的属性和方法,非私有的属性和方法可以直接访问,但是私有属性不能在子类直接访问,要通过父类提供的公共方法去访问。2.子类必须调用父类的构造器,完成父类的初始化3.当创建子类对象时,不管使用子类的哪个构造器,默认情况下总会去调用父类的无参构造器,如果父类没有提供无参构造器,则必须在子类的构造器中用super去指定使用父类的哪个构造器完成对父类的初始化工作,否则,编译不会通过。4.如果希望制定去调用父类的某个构造器,则显示的调用一下:super(参数列表)5.

2022-03-02 14:23:41 471

原创 JAVA常用包

1.java.lang.*基本包,默认引入,不需要再显式引入2.java.util.*系统提供的工具包,工具类,(例:Scanner)3.java.net*网络包,网络开发4.java.awt.*做java的界面开发,GUI

2022-02-28 20:39:11 171

原创 IDEA常用快捷键

1.删除当前行Ctrl + Y2.复制当前行Ctrl + D3.补全代码Alt + /4.添加注释和取消注Ctrl + / (第一次注释,第二次取消)5.快速格式化代码Ctrl + Alt + L6.快速运行代码Shift + F107.快速生成构造方法Alt + insert8.查看一个类的层级关系Ctrl + H9.把光标放在一个方法上,Ctrl + B , 可以选择定位到哪个类的方法10.自动分配变量名 在后边输入 .var...

2022-02-28 19:35:52 95

原创 DOS命令

DOS:Disk Operating System 磁盘操作系统常用的dos命令:1.查看当前目录有什么 : dir '例:dir d:\abc\tset2.切换到其他盘下 :盘符号cd例: 切换到C盘 cd /D C:3.切换到当前盘的其他目录下例: cd d:\abc\tset4.切换到上一级:cd ..5.切换到根目录cd \...

2022-02-25 16:16:59 257

原创 JAVA注释格式

1.单行注释 ////这是一行java注释2.多行注释 /* 注释 *//*这是一行java注释这是一行java注释这是一行java注释*/注意:多行注释中不允许嵌套多行注释3.文档注释文档注释:注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档,一般写在类。/*** @author xttx* @version 1.0*/javadoc -d 文件夹名 -author-versionzhu..

2022-02-25 15:59:13 484

原创 JAVA转义字符

1. \t :一个制表位,实现对齐的功能2. \n :换行符3. \\ :一个\4. \" :一个"5. \' :一个'6. \r : 一个回车

2022-02-25 15:30:05 209

原创 HashMap常用方法

Hashmap的存值:1 public static void main(String[] args) {2 ///*Integer*/map.put("1", 1);//向map中添加值(返回这个key以前的值,如果没有返回null)3 HashMap<String, Integer> map=new HashMap<>();4 System.out.println(map.put("1", 1));//null.

2021-11-01 21:00:24 380

转载 Leetcode34.在排序数组中查找元素的第一个和最后一个位置

# 思路寻找target在数组里的左右边界,有如下三种情况:情况一:target 在数组范围的右边或者左边,例如数组{3, 4, 5},target为2或者数组{3, 4, 5},target为6,此时应该返回{-1, -1} 情况二:target 在数组范围中,且数组中不存在target,例如数组{3,6,7},target为5,此时应该返回{-1, -1} 情况三:target 在数组范围中,且数组中存在target,例如数组{3,6,7},target为6,此时应该返回{1, 1}这三种

2021-11-01 10:12:27 221

原创 二分查找中的区间边界条件问题

二分查找涉及的很多的边界条件,逻辑比较简单,但就是写不好。例如到底是while(left < right)还是while(left <= right),到底是right = middle呢,还是要right = middle - 1呢?写二分法,区间的定义一般为两种,左闭右闭即[left, right],或者左闭右开即[left, right)。一、左闭右闭 target在[left, right]区间,所以有如下两点:while (left <= rig...

2021-10-31 20:14:03 668

原创 为什么二分法算法中最好写int mid = left + (right-left)/2;

在经典二分查找法算法题中, 需要取数组中间元素的位置,那么第一反应不难写出int mid = (left + right) / 2; 但是这么写其实会有⼀个问题,就是可能会发生数值越界,left+right很有可能会超出int的范围。 最好写int mid = left + (right-left)/2;这样可以很大程度上避免数组越界的问题。...

2021-10-31 19:49:27 1215

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除