- 博客(105)
- 收藏
- 关注
原创 209.长度最小的子数组
给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的 连续 子数组,并返回其长度。如果不存在符合条件的子数组,返回 0。
2024-12-25 22:47:31
477
原创 977.有序数组的平方JAVA实现
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。定义一个新数组result,和A数组一样的大小,让k指向result数组终止位置。那么数组平方的最大值就在数组的两端,不是最左边就是最右边,不可能是中间。数组其实是有序的, 只不过负数平方之后可能成为最大数了。此时可以考虑双指针法了,i指向起始位置,j指向终止位置。
2024-12-25 21:43:51
197
原创 27. 移除元素力扣算法
示例 1: 给定 nums = [3,2,2,3], val = 3, 函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。示例 2: 给定 nums = [0,1,2,2,3,0,4,2], val = 2, 函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。元素的顺序可以改变。
2024-12-24 21:25:16
151
原创 java数据结构与算法之二分查找(蓝桥杯)
二分查找算法也称折半查找,是一种非常高效的工作于有序数组的查找算法。后续的课程中还会学习更多的查找算法,但在此之前,不妨用它作为入门。
2024-12-08 12:39:12
1204
原创 springboot框架常见的注解
本文来自于https://blog.csdn.net/weixin_44259720/article/details/104541167前言Spring Boot 主要优势之一,就是“开箱即用,远离繁琐的配置”。Spring Boot 架构没有代码生成,也不需要XML配置,有效避免大量的 Maven 导入和各种版本冲突,为 Spring 开发提供一个更快、更广泛的入门体验。不得不说,掌握 Spring Boot 常用注解,是学习Spring Boot 架构的关键。一、核心注解@SpringBootApp
2024-08-27 14:50:42
509
原创 Java里的注解(详解)
自定义注解单独存在是没有什么意义的,一般会跟反射结合起来使用,会用发射去解析注解。针对于注解,只要掌握会使用别人已经写好的注解即可。关于注解的解析,一般是在框架的底层已经写好了。
2024-08-10 17:24:11
1512
原创 Java里的类加载器(详解)
基础加强包含了:反射,动态代理,类加载器,xml,注解,日志,单元测试等知识点其中最难的是反射和动态代理,其他知识点都非常简单由于B站P数限制,xml,注解等知识点,阿玮写了详细文档供大家学习。
2024-08-10 17:22:35
1164
原创 JAVA里的xml(详解)
万维网联盟(W3C)万维网联盟(W3C)创建于1994年,又称W3C理事会。1994年10月在麻省理工学院计算机科学实验室成立。建立者: Tim Berners-Lee (蒂姆·伯纳斯·李)。是Web技术领域最具权威和影响力的国际中立性技术标准机构。到目前为止,W3C已发布了200多项影响深远的Web技术标准及实施指南,如广为业界采用的超文本标记语言HTML(标准通用标记语言下的一个应用)、可扩展标记语言XML(标准通用标记语言下的一个子集)
2024-08-10 16:38:12
1428
原创 JAVA实现的简单聊天室
⑥如果成功登录,就可以开始聊天,此时的聊天是群聊,一个人发消息给服务端,服务端接收到之后需要群发给所有人。==============欢迎来到黑马聊天室================要求1:用户名要唯一,长度:6~18位,纯字母,不能有数字或其他符号。利用TCP协议,做一个带有登录,注册的无界面,控制版的多人聊天室。如果是登录操作,就输入用户名和密码,以下面的格式发送给服务端。如果是注册操作,就输入用户名和密码,以下面的格式发送给服务端。⑤ 注册,校验用户名是否唯一,校验用户名和密码的格式是否正确。
2024-07-31 23:27:18
778
原创 JAVA里的反射(详解)
是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意属性和方法;这种动态获取信息以及动态调用对象方法的功能称为Java语言的反射机制。通俗的理解:(掌握)利用反射创建的对象可以无视修饰符调用类里面的内容可以跟配置文件结合起来使用,把要创建的对象信息和方法写在配置文件中。读取到什么类,就创建什么类的对象读取到什么方法,就调用什么方法此时当需求变更的时候不需要修改代码,只要修改配置文件即可。
2024-07-30 23:56:00
1278
原创 JAVA里的网络编程
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统网络编程在网络通信协议下,不同计算机上运行的程序,可以进行数据传输。
2024-07-29 22:47:59
526
原创 JAVA里的多线程(下部)详解
当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。线程对象在不同的时期有不同的状态。那么Java中的线程存在哪几种状态呢?Java中的线程状态被定义在了java.lang.Thread.State枚举类中,State枚举类的源码如下:/* 新建 */NEW ,/* 可运行状态 */RUNNABLE ,/* 阻塞状态 */BLOCKED ,/* 无限等待状态 */WAITING ,/* 计时等待 *//* 终止 */
2024-07-28 11:21:03
954
原创 JAVA里的多线程上部(详解)
概述生产者消费者模式是一个十分经典的多线程协作的模式,弄懂生产者消费者问题能够让我们对多线程编程的理解更加深刻。所谓生产者消费者问题,实际上主要是包含了两类线程:一类是生产者线程用于生产数据一类是消费者线程用于消费数据为了解耦生产者和消费者的关系,通常会采用共享的数据区域,就像是一个仓库生产者生产数据之后直接放置在共享数据区中,并不需要关心消费者的行为消费者只需要从共享数据区中去获取数据,并不需要关心生产者的行为Object类的等待和唤醒方法方法名说明。
2024-07-28 11:19:09
1353
原创 糊涂工具包和commons包(Java)
介绍:Commons是apache开源基金组织提供的工具包,里面有很多帮助我们提高开发效率的API比如:StringUtils 字符串工具类NumberUtils 数字工具类ArrayUtils 数组工具类RandomUtils 随机数工具类DateUtils 日期工具类StopWatch 秒表工具类ClassUtils 反射工具类SystemUtils 系统工具类MapUtils 集合工具类Beanutils bean工具类。
2024-07-27 19:15:31
1092
原创 JAVA里的IO流最终版(详解)
缓冲流,也叫高效流,是对4个基本的FileXxx字节缓冲流字符缓冲流缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率。Java 提供了一种对象序列化的机制。用一个字节序列可以表示一个对象,该字节序列包含该对象的数据对象的类型和对象中存储的属性等信息。字节序列写出到文件之后,相当于文件中持久保存了一个对象的信息。反之,该字节序列还可以从文件中读取回来,重构对象,对它进行反序列化。对象的数据对象的类型和对象中存储的数据。
2024-07-22 00:19:10
1433
原创 相对路径与绝对路径JAVA
就表示day46这个目录,所以相当于demo3 的路径就是j.txt。这里的j.txt就表示该文件在day46这个目录下,此时的。hh.txt在test目录下的文件名称。
2024-07-20 10:12:49
209
原创 Java里的IO流上(详解)
生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input和输出output,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。也叫做数据,也叫做作数据。
2024-07-19 22:35:56
1048
原创 Java里的文件类
需求:统计一个文件夹中每种文件的个数并打印。file依次表示该文件夹里面的每一个文件或者文件夹。定义一个方法找某一个文件夹中,是否有以txt结尾的的电影(暂时不需要考虑子文件夹):返回一个String数组,表示该File目录中的所有子文件或目录。:返回一个File数组,表示该File目录中的所有的子文件或目录。:创建由此File表示的目录,包括任何必需但不存在的父目录。:当且仅当具有该名称的文件尚不存在时,创建一个新的空文件。file依次表示该文件夹里面的每一个文件或者文件夹,也就是。(需要考虑子文件夹)
2024-07-19 22:15:00
1463
原创 Java里的异常详解
那么,当调用方法使用接受到的参数时,首先需要先对参数数据进行合法的判断,数据若不合法,就应该告诉调用者,传递合法的数据进来。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。:指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。:Java中对异常有针对性的语句进行捕获,可以对出现的异常进行指定方式的处理。,用来抛出一个异常对象,将这个异常对象传递到调用者处,并结束当前方法的执行。用来进行某种异常的捕获,实现对捕获到的异常进行处理。
2024-07-18 17:17:09
1255
原创 可变参数
在之后,如果我们定义一个方法需要接受多个参数,并且多个参数类型一致,我们可以对其简化.其实就是一个数组在传递数据的时候,省的我们自己创建数组并添加元素了,JDK底层帮我们自动创建数组并添加元素了注意:1.一个方法只能有一个可变参数2.如果方法中有多个参数,可变参数要放到最后。如下。
2024-07-14 16:33:42
480
原创 Map系列集合
Map集合概述interface Map K:键的类型;V:值的类型Map集合的特点双列集合,一个键对应一个值键不可以重复,值可以重复Map集合的基本使用//创建集合对象//V put(K key, V value) 将指定的值与该映射中的指定键相关联map.put("itheima001","林青霞");map.put("itheima002","张曼玉");map.put("itheima003","王祖贤");map.put("itheima003","柳岩");
2024-07-13 16:09:16
1198
原创 数据结构二叉树
像22没有父节点的地址就记作null,下面的像15等,没有子节点地址的也记为null度:像22 18,26等他们的子节点都有2个,但是在最下面15等 这样的就没有子节点,所以。
2024-07-12 15:47:02
338
原创 Java中的Set系列集合超详解
底层数据结构是哈希表存取无序不可以存储重复元素没有索引,不能使用普通for循环遍历底层数据结构是哈希表存取无序不可以存储重复元素没有索引,不能使用普通for循环遍历。
2024-07-12 15:30:09
1598
原创 Java 中的泛型(超全详解)
泛型的出现就是为了统一集合当中数据类型的尖括号 <> 中的 泛型标识被称作是类型参数,用于指代任何数据类型。T :代表一般的任何类。E :代表 Element 元素的意思,或者 Exception 异常的意思。K :代表 Key 的意思。V :代表 Value 的意思,通常与 K 一起配合使用。S :代表 Subtype 的意思,文章后面部分会讲解示意。自己实现集合/*E: 表示不确定的类型,该类型在类名后面已经定义过了e: 形参的名字,变量名*/
2024-07-10 22:13:59
20980
8
原创 Java中List集合介绍
List集合的概述有序集合,这里的有序指的是存取顺序用户可以精确控制列表中每个元素的插入位置,用户可以通过整数索引访问元素,并搜索列表中的元素与Set集合不同,列表通常允许重复的元素List集合的特点存取有序可以重复有索引。
2024-07-09 15:53:11
551
原创 JAVA集合Collection常用方法详解
提到集合就不得不提一下数组,好多集合底层都是依赖于数组的实现。数组一旦初始化后,长度就确定了,存储数据对象不能达到动态扩展,其次数组存储元素不便于对数组进行添加、修改、删除操作,而且数组可以存储重复元素。这个时候集合对作用显现出来了。集合分为Collection和Map两种体系。下面先介绍Collection的集合类的继承树如下图所示:单列集合只能一次添加一个数据双列集合可以一次添加2个数据。
2024-07-09 14:25:30
2761
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人