- 博客(29)
- 收藏
- 关注
原创 java-learn:即时通讯小项目
都会被修改 但是jdk8之后就不会 每次修改一下时间对象 就会返回一下新的时间对象。jdk8之前的可能有并发的问题 就是只要修改一下那个时间 那么下面所有的时间。同时开启多个窗口 模拟多个用户。
2025-12-15 16:20:18
286
原创 java-learn(10):异常,File
Exception:叫做异常,代表程序可能出现的问题。运行时异常:RuntimeException以及子类,编译阶段不会出现运行时异常提醒。编译时异常:编译阶段就会出现的异常提醒。细节:类需要见名知意。最好是xxxException。如果是编译异常就继承Exception.如果是运行时异常就继承RuntimeException.1.什么是io流?存储和读取数据的解决方案。2.io流的作用?用于读取数据(本地文件,网络)3.io流按照操作文件的类型可以分为哪两种流?
2025-12-07 15:57:52
659
原创 java-learn(11) : 网络编程和多线程
ip: 设备在网络中的地址,是唯一的标识端口号:应用程序在设备中唯一的标识协议:数据在网络中传输的规则,常见的协议有UDP,TCP,http,https,ftp.
2025-12-06 19:10:06
678
原创 java-learn(9):常见算法,集合框架
在jdk5之前是没有泛型的,所有任意数据类型都可以存入到集合中,当遍历集合时,只能用object接受,但是这个不能使用子类特有的方法。如果集合中储存的是自定义对象,必须重写hashCode和equals方法,重写hashCode是为了用对象的属性值去进行计算哈希值,重写equals是为了用对象的属性值进行比较。当需要遍历删除元素时,可以使用迭代器的方式,当只需要遍历时,可以使用增加for循环,lambda表达式。在指定泛型的具体类型之后,可以传入他对应的子类或者实现类的类型。泛型中不能写基本数据类型。
2025-11-02 19:27:31
715
原创 java-learn(7):常用API
使用场景:就是当参数需要传入一个对象时,基本数据类型不行,这是就只能用包装类 还有就是集合只能引用数据类型,如果想存基本数据类型,就要用他们对应的包装类。深拷贝:基本数据类型就直接拷贝过来,如果是字符串就会复用(直接复制的字符串是储存在串池中的,如果有一样的就会复用),引用数据类型会重新创建一个新的;浅克隆:把不管对象是基本数据类型或者引用数据类型,都完全拷贝过了,引用数据类型拷贝的是地址值,所以改变一个对象,另一个对象也会跟着改变。把A对象的属性值完全拷贝给B对象,也叫对象拷贝,对象复制。
2025-10-27 19:40:02
564
原创 Linux-learn(Linux常用命令)
先去网上下载VMware17版本(黑马资料中给的是VMware15会和win11冲突)然后再去黑马程序员公众号里面下载这个项目里面关于Linux的资料,里面有centos的安装包,还有finalshell的安装包,然后按照黑马视频里面的做就行了。tar -cvf test.tar test 创建一个test.tar的包 把test中的文件打包进去。tar -xvf test.tar 把test.tar 还原为test。tar -zxvf test.tar.gz 解压test.tar.gz。
2025-10-21 11:50:14
901
原创 java-learn(6):面对对象进阶(继承,多态,代码块,抽象类,接口,内部类)
本文介绍了Java面向对象编程中的三个重要概念:static、继承和多态。static修饰的成员变量和方法属于类而非对象,可通过类名直接调用;继承允许子类复用父类功能并扩展新特性,需注意访问权限和构造方法调用规则;多态通过父类引用指向子类对象实现,能提高代码灵活性但需注意类型转换问题。文章还包含工具类编写、方法重写规则以及实际练习案例,帮助理解这些核心概念的应用场景和使用技巧。
2025-10-13 15:29:18
718
原创 java-learn(4):字符串(String,StringBuilder,StringJoiner)ArrayList
本文主要介绍了Java中字符串相关类String、StringBuilder和StringJoiner的使用方法及原理。String类是不可变字符串,通过构造方法创建对象,存储在字符串常量池中;StringBuilder是可变的字符串,适用于字符串拼接和反转操作;StringJoiner用于指定间隔符号的字符串拼接。文章还讲解了字符串的内存模型、比较原理以及ArrayList集合的基本操作。最后通过一个字符串旋转匹配的练习,展示了字符串处理的实际应用。
2025-09-29 22:16:21
717
原创 java-learn(1)
1.数据类型的取值范围: byte < short < int < long < float < double。它的操作是从左到右进行的 如果前面有其它类型的数据 会先按照他们自己的计算规则计算。2.当数据进行计算时,要先装换为相同的数据类型才能进行计算。1.只要出现的字符串 那么相加的结果的类型一定是字符串。4.隐式转换规则:取值范围小的转化为取值范围大的。正数的补码不变,负数的补码在反码的基础上+1。计算机中的储存和计算都是以补码的形式进行的。4.cd 目录1\目录2 :进入多级目录。
2025-09-15 16:59:33
350
原创 mysql-learn(4)
name varchar(10) not null unique comment '姓名',age int check ( age between 1 and 120 ) comment '年龄',status char(1) default '1' comment '状态',gender char(1) comment '性别')comment '用户表';desc user;
2025-09-15 16:07:06
306
原创 python学习(3)
"""自定义模块: 创建python文件 在里面写代码 正常引入就可以了__main__ 如果在当前文件运行 __name__就会变为"__main__" 否则就是文件名所以如果在外面的文件引入这个文件 if语句里面的内容不会被输出print("在当前文件运行要输出的东西")__all__ = ["函数名"]这个的作用是当我们用*引入这个文件里面的全部函数的时候 可以选择想传过去的函数在all的那个列表中的函数才能别引用 这个只针对*有用。
2025-06-13 22:28:04
413
原创 python学习
"""字符串里面的内容有单引号就可以用双引号定义字符串里面的内容有双引号就可以用单引号定义或者可以用转义字符\把它变出普通的字符"""num = "'我是黑马程序员'"print(num)num = '"我是黑马程序员"'print(num)num = "\"我是黑马程序员\""print(num)运行结果。
2025-06-08 15:57:31
307
原创 背包问题.
01背包是对应于体积为V的背包 n个物品每个物品可以选或者不选 且每个物品只能选一个通过上面的代码我们发现 我们可以把二维优化为一维 这个时候原来第二维的遍历就要倒着来 因为的话我们的转态是要从i-1到i dp[i-1][j-v[i]]+w[i] 要降维的话就要保证体积为 j-v[i] 是上一个状态的 也就是没有被修改过下面是一道例题//扩展一下上面对应的问题是背包体积为V的情况下 但是并没有要求装满 所以上面的dp初始化是为0,但是如果题目要求恰好体积为V的情况下的最大价值的话 就要。
2025-06-07 17:01:23
669
原创 图论-(Floyd,dijkstra,kruskal,prim算法板子)
文章介绍了图论的基本概念和常用算法。图由顶点(V)和边(E)组成,分为简单图、完全图和连通图等类型。主要算法包括:遍历算法:深度优先搜索(DFS)和广度优先搜索(BFS)的实现模板拓扑排序:用于判断有向无环图和处理AOV/AOE网络最小生成树:Prim算法(堆优化O(nlogn))和Kruskal算法(基于并查集)最短路径:Floyd算法(O(n³)求全源最短路径)和Dijkstra算法(堆优化求单源最短路径)每种算法都提供了代码实现模板和相关例题链接,涵盖了图论中的核心算法和应用场景。
2025-06-01 22:34:19
418
原创 kmp 字符串hash Manacher模版
本文介绍了三种常见的字符串处理算法:KMP、字符串哈希和Manacher。KMP算法用于高效匹配模式串与主串,时间复杂度为O(N),通过预处理模式串生成next数组来优化匹配过程。字符串哈希算法通过将字符串映射为数字来简化匹配问题,常用于快速比较字符串片段。Manacher算法则用于在O(N)时间内找到字符串中的最长回文子串,通过预处理字符串并利用回文对称性来减少计算量。每种算法都提供了代码模板和相应的练习题,帮助理解和应用这些算法。
2025-05-12 21:46:41
432
原创 字典树 01—tire 板子
注意如果插入的是前缀和 那么要先插入0 ( insert(0) )1.与x异或的最大值/最小值 求区间最大异或和(利用前缀和)1.快速判断莫个字符串是否在这个集合中。2.查询数组中不x大的个数 可求逆序对。3.在字符串集合中快速进行排序。2.高效查找具有相同。
2025-05-09 22:23:39
485
原创 二分算法(二分查找,二分答案(最小化最大值,最大化最小值,第k小,第k大,浮点二分))
之前总是搞不懂二分法的,到leetcode和洛谷上一起刷了三十多道关于三十多到关于二分的题目,发现大部分题目按着模版去做都能解出来,下面我会列出一些模版和一些经典的题目和解析对于一个问题,它的答案属于一个区间,当这个区间很大时,暴力超时。但重要的是——这个区间是对题目中的某个量有单调性的,此时,我们就会二分答案。每一次二分会做一次判断(check函数),看是否对应的那个量达到了需要的大小,如果满足check,就放弃右半区间(或左半区间),如果不满足,就放弃左半区间(或右半区间)。
2025-05-06 22:04:52
862
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1