- 博客(43)
- 收藏
- 关注
原创 Collectors 类 (Java)
StringBuilder::new, // 供应器:创建一个 StringBuilder(sb, s) -> sb.append(s).append("|"), // 累加器:将字符串添加到 StringBuilder(sb1, sb2) -> sb1.append(sb2), // 合并器:合并两个 StringBuilderStringBuilder::toString // 完成器:将 StringBuilder 转换为字符串// 输出: apple|banana|cherry|
2025-02-21 08:30:00
202
原创 Spring 中的 Assert 类 (Java)(常用方法)
Spring 的Assert类是一个强大的工具,用于简化代码中的参数校验和状态检查。它通过抛出异常来快速失败,避免程序继续执行可能导致错误的行为。
2025-02-21 08:30:00
162
原创 MediaType(媒体类型)
MediaType由两部分组成:主类型和子类型,用斜杠(/)进行分隔。主类型:表示一大类数据类型,如text(文本)、image(图像)、audio(音频)、video(视频)、application(应用程序)等。子类型:表示主类型下的具体数据类型,如plain(纯文本)、html(超文本标记语言)、json(JavaScript对象表示法)、xml(可扩展标记语言)、jpeg(JPEG图片)、png(PNG图片)等。
2024-12-27 08:30:00
1545
原创 Map<String, Object> 转 Map<String, String> 两种方法(类型转化)
方法接受一个类型的输入,并返回一个类型的输出。它遍历输入映射中的每个条目,将每个条目的值转换为字符串(如果值不为null),然后将键值对添加到结果映射中。
2024-12-13 08:30:00
569
原创 == null,isEmpty() , ==““ 和 isblank 的区别
使用== null检查对象是否为null。使用isEmpty()检查字符串或集合是否为空,但需确保对象非null。避免使用==""来比较字符串内容,应使用equals("")。使用isBlank()(Java 11+)检查字符串是否为空或仅包含空白字符,同样需确保字符串对象非null。
2024-12-09 08:30:00
265
原创 阻塞队列实现
3.put 插⼊元素的时候, 判定如果队列满了, 就进⾏ wait. (注意, 要在循环中进⾏ wait 被唤醒时不⼀定 队列就不满了,因为同时可能是唤醒了多个线程).4. take 取出元素的时候, 判定如果队列为空, 就进⾏ wait. (也是循环 wait).2. 使用 synchronized 进行加锁控制.1.通过"循环队列" 的方式来实现。
2024-07-16 14:05:00
210
原创 线程安全的单例模式--“饿汉“,“懒汉“
设计模式好⽐象棋中的"棋谱".红⽅当头炮,⿊⽅⻢来跳.针对红⽅的⼀些⾛法,⿊⽅应招的时候有⼀ 些固定的套路.按照套路来⾛局势就不会吃亏. 软件开发中也有很多常⻅的"问题场景".针对这些问题场景.
2024-07-14 23:16:10
348
原创 创建线程的五种方式
运行结果:每秒中输出一次可能是main开头,也可能是thread开头,说明多个线程的调度顺序是"无序的",在操作系统内部也称为"抢占执行".
2024-07-03 17:18:43
376
1
原创 MySQL数据库的增删改查(进阶)
将一个表中的内容插入到另一个表中.这里需要确保查询集合的列数,类型,顺序要和插入表的列数,类型,顺序一致,这里列的名称可以不一样. values 替换成了select 查询的临时表.
2024-04-07 22:22:36
673
原创 MySQL数据库约束
NOT NULL - 指示某列不能存储 NULL 值。UNIQUE - 保证某列的每行必须有唯一的值。DEFAULT - 规定没有给列赋值时的默认值。PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列(或两个列多个列的结合)有唯一标 识,有助于更容易更快速地找到表中的一个特定的记录。FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。
2024-03-18 18:35:56
839
原创 MySQL数据表的增删改查(基础)(CRUD)
注释:在SQL中可以使用“--空格+描述”来表示注释说明.CRUD 即增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)四个单词的首字母缩写.
2024-03-11 16:15:50
762
原创 MySQL数据库基本操作
如果系统没有 test 的数据库,则创建一个使用utf8mb4字符集的 test 数据库,如果有则 不创建。创建一个使用utf8mb4字符集的 test 数据库。案列:可以使用comment增加字段说明。VARCHAR(SIZE):字符串类型。DECIMAL(M, D):浮点数类型。常用数据类型: INT:整型。TIMESTAMP:日期类型。这里以test为名称;
2024-03-06 19:29:09
435
原创 JavaSE复习流程
几个重要的接口Cloneable——克隆这两个接口是比较大小的。1. Compareable对类的侵入性更强2. Comparator 更灵活一点Object类——所有类的父类。
2024-01-21 21:52:27
2125
原创 异常(Java)
Java中虽然已经内置了丰富的异常类但是并不能完全表示实际开发中所遇到的一些异常,此时就需要维护符合我们实际情况的异常结构.实现一个用户登陆功能.if (!if (!System.out.println("登陆成功");此时我们在处理用户名密码错误的时候可能就需要抛出两种异常.我们可以基于已有的异常类进行扩展继承),创建和我们业务相关的异常类1.自定义异常类,然后继承自Exception或者2.实现一个带有String类型参数的构造方法此时我们的login。
2023-12-23 20:07:17
853
2
原创 ArrayList简介
1.ArrayList 的使用在集合框架中,ArrayList是一个普通的类,实现了List接口。ArrayList是以泛型方式实现的,使用时必须要先实例化。ArrayList底层是一段连续的空间,并且可以动态扩容,是一个动态类型的顺序表。1.ArrayList 的使用。
2023-12-19 19:14:43
441
1
原创 StringBuilder和StringBuffer
这两个类大部分功能是相同的,这里介绍 StringBuilder。如果要想互相转换,可以采用如下原则。的不可更改特性,为了方便字符串的修改,未采用同步处理,属于线程不安全操作.采用同步处理,属于线程安全操作;获取底层保存字符串空间总的大小。频繁修改字符串的情况考虑使用。位置插入:八种基类类型。开始一直到末尾的字符以。
2023-12-16 21:47:51
1002
3
原创 时间和空间复杂度
。在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关注一个算法的空间复杂度。
2023-12-16 14:40:48
871
1
原创 String类常用方法(Java)
与equals不同的是,equals返回的是Boolean类型,而compareTo返回的是int类型。注意:对于内置类型,== 比较的是变量当中的值,对于引用类型 == 比较的是引用中的地址。先按照字典次序大小比较,如果出现不等的字符,直接返回这两个字符的大小差值。由于字符串是不可变对象, 替换不修改当前字符串, 而是产生一个新的字符串。自身的值不能改变,即不能引用其它字符数组,但是其引用空间中的内容可以修改。可以将一个完整的字符串按照指定的分隔符划分为若干个子字符串。字符串中的内容是不可改变。
2023-12-15 21:03:17
1092
2
原创 抽象类(java)
在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,在Java中,一个类如果被abstract修饰称为抽象类,抽象类中被abstract修饰的方法称为抽象方法,抽象方法不用 给出具体的实现体。(1)被abstract 修饰的方法,叫做抽象方法,没有具体的实现的。(2)如果一个类,包含了这个抽象方法,此时这个类也必须得用abstract 修饰。此时这个类被叫做抽象类。(3)抽象类当中,可以有和普通类当中一样的成员变量和成员方法。
2023-11-20 18:49:04
80
5
原创 重写与重载(Java)
最好的方式是:重新定义一个新的类,来重复利用其中共性的内容, 并且添加或者改动新的内容。重写的好处在于子类可以根据需要,定义特定于自己的行为。,即在编译时,不能确定方法的行为,需要等到程序运行时,才能够确定具体调用那个类的方法。3、子类重写父类方法的时候,子类方法访问修饰限定符要大于等于父类的。子类在重写父类的方法时,一般必须与父类方法原型一致: 返回值类型。1、被final修饰的方法不可以被重写,这个方法叫做密封方法。5、被重写的方法返回值类型可以不同,但是必须是具有父子关系的。即外壳不变,核心重写!
2023-11-17 17:46:47
76
5
原创 super关键字
由于设计不好,或者场景需要,子类和父类中可能会存在相同名称的成员,如果要在子类方法中访问父类同名成员时,直接访问是无法做到的,
2023-11-13 17:42:18
50
2
原创 继承(java)
Java中使用类对现实世界中实体来进行描述,类经过实例化之后的产物对象,则可以用来表示现实中的实体,但是现实世界错综复杂,事物之间可能会存在一些关联,那在设计程序是就需要考虑。通过观察上述代码可以发现,猫、狗类中存在大量重复代码;面向对象思想中提出了继承的概念,专门用来进行共性抽取,实现代码的复用。
2023-11-13 16:30:59
68
2
原创 数组的应用场景(java)
因为数组是引用类型,按照引用类型来进行传递,是可以修改其中存放的内容的。在func方法内部修改数组的内容, 方法外部的数组内容也发生改变.在func方法中修改形参 x 的值, 不影响实参的 num 值。
2023-11-09 16:25:59
84
2
原创 动态内存管理
这个函数向内存申请一块的空间,并返回指向这块空间的指针。如果开辟成功,则返回一个指向开辟好空间的指针。如果开辟失败,则返回一个NULL指针,因此malloc的返回值一定要做检查。返回值的类型是 void* ,所以malloc函数并不知道开辟空间的类型,具体在使用的时候使用者自己来决定。如果参数 size 为0,malloc的行为是标准是未定义的,取决于编译器。C语言提供了另外一个函数freefree函数用来释放动态开辟的内存。如果参数ptr指向的空间不是动态开辟的,那free。
2023-10-10 22:03:25
50
1
原创 枚举与联合
联合也是一种特殊的自定义类型这种类型定义的变量也包含一系列的成员,特征是这些成员公用同一块空间(所以联合也叫共用体)。比如://联合类型的声明union Unchar c;int i;//联合变量的定义//计算连个变量的大小//4。
2023-10-08 17:48:30
63
5
原创 结构体详解
int x;int y;}p1;//声明类型的同时定义变量p1//定义结构体变量p2//初始化:定义变量的同时赋初值。struct Stu //类型声明//名字int age;//年龄//初始化int data;//结构体嵌套初始化//结构体嵌套初始化。
2023-09-25 21:45:45
168
11
原创 三子棋游戏实现
相信许多小伙伴都玩过三子棋游戏,而这里将编辑代码进行人机对弈。不过这里小编的技术还不太成熟所以‘机’还不算很智能,欢迎大家来讨论。 这里我将代码分为三个文件,分别为头文件代码符号的定义game.h;代码中函数的实现game.c;代码的主体test.c。 2.游戏实现(1)输出棋盘 输出一个3*3的棋盘这里更改数字可以控制棋盘的大小。(2)玩家下棋(3)电脑下棋(4)判断输赢3.头文件gaem.h4.主函数test.c5.函数的
2023-08-24 19:19:40
193
11
原创 函数的说明与使用
自定义函数和库函数一样,有函数名,返回值类型和函数参数。但是不一样的是这些都是我们自己来设计。例1:输入两个整数求最大值int get_max(int x, int y) //int 返回类型;get_max 函数名;(参数)//函数体int main()return 0;这里的get_max函数与库函数就一样了,可以直接使用,与库函数的区别为库函数使用的时候需要包含头文件,自定义函要我们自己写出作用,然后可以直接调用。
2023-07-29 21:38:38
92
7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人