自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (4)
  • 收藏
  • 关注

原创 面试易错题

ublic class ListExer { /* 区分List中remove(int index)和remove(Object obj) */ @Test public void testListRemove() { List list = new ArrayList(); list.add(1); list.add(2); list.add(3); updateList(list);

2023-04-19 22:11:21 4426

原创 Hashset

Set接口的框架:|----Collection接口:单列集合,用来存储一个一个的对象|----Set接口:存储无序的、不可重复的数据 -->高中讲的“集合”|----HashSet:作为Set接口的主要实现类;线程不安全的;可以存储null值|----LinkedHashSet:作为HashSet的子类;遍历其内部数据时,可以按照添加的顺序遍历对于频繁的遍历操作,LinkedHashSet效率高于HashSet.|----TreeSet:可以按照添加对象的指定属性,进行排序。.

2023-04-19 22:10:56 4456

原创 Java创建线程的四种方式——callabe接口

java创建线程共有四种方式:常用两种方式为:继承和实现runable接口,另外还有callable接口方式,以及线程池的方式今天说一下callable接口的方式 ,这是jdk5.0 新增的一种方式。创建callable接口共分为一下几个步骤:/1.创建一个实现Callable的实现类//2.实现call方法,将此线程需要执行的操作声明在call()中**//3.创建Callable接口实现类的对象//4.将此Callable接口实现类的对象作为传递到FutureTask构造器中,创建Futu

2023-04-19 22:10:35 4583

原创 2021-11-09

Hashmap 1.7 与1.8区别扩容机制: capcity 16 负载因子 0.75 阈值 2倍大小 1.8 不同1.7与1.8添加区别 头插法(1.7 缺点 死循环 是线程不安全原因之一) 尾插法 (1.8 )concurrentHashMap 线程安全的集合容器 保证线程安全还有Hashtable 或者加Synchronized lock,或者collection。synchronized 同步操作,为什么选择concurrentHashmapconcurren

2023-04-19 22:10:10 4918

原创 解决IDEA 新建module 时无法运行Class 文件问题 (module里面java文件夹不高亮),以及依赖无法导入问题

*

2023-04-19 11:27:04 5877

原创 操作系统内存管理

连续分配方式1.单一连续分配只用于单用户进程,缺点较明显。2.固定分配分区大小相等:虽然可以并发执行,但是容易造成空间浪费分区大小不等方式:见上图(起始地址,分区大小)动态分配方式:根据进程需求要多少给多少 但是祝愿系统只能分配2的幂次空间,如100kb进程分配128kb。若所分配进程运行完,此处空间便空闲,一般采用空闲分区链或者空闲分区表的方式进行组织,当又有进程来时,会有空闲分区算法来进行分配。1)首次适应算法缺点原因:1.由于其空闲分区地址是按照地址排序的,所以查找到的第一个地

2022-05-24 11:19:44 2556

原创 Mybits入门

1、搭建实验数据库CREATE DATABASE `mybatis`;USE `mybatis`;DROP TABLE IF EXISTS `user`;CREATE TABLE `user` (`id` int(20) NOT NULL,`name` varchar(30) DEFAULT NULL,`pwd` varchar(30) DEFAULT NULL,PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;inse

2022-02-25 18:24:38 2580

原创 SpringBoot 自动装配原理

运行原理探究我们之前写的HelloSpringBoot,到底是怎么运行的呢,Maven项目,我们一般从pom.xml文件探究起;1、父依赖pom.xmlspring-boot-dependencies:核心依赖在父工程中!我们在写或者引入一些Springboot依赖的时候,不需要指定版本,就因为有这些版本仓库1、其中它主要是依赖一个父项目,主要是管理项目的资源过滤及插件!<parent> <groupId>org.springframework.boot

2022-02-25 18:23:01 2623

原创 yaml语法学习

yaml语法学习配置文件SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的application.properties语法结构 :key=valueapplication.yaml语法结构 :key:空格 value**配置文件的作用 :**修改SpringBoot自动配置的默认值,因为SpringBoot在底层都给我们自动配置好了;比如我们可以在配置文件中修改Tomcat 默认启动的端口号!测试一下!server: port: 8081

2022-02-25 18:22:46 2599

原创 JSR303数据校验

JSR303数据校验先看看如何使用Springboot中可以用@validated来校验数据,如果数据异常则会统一抛出异常,方便异常中心统一处理。我们这里来写个注解让我们的name只能支持Email格式;1、添加validation启动器<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation&l

2022-02-25 18:22:21 2731

原创 【无标题】

自动配置原理配置文件到底能写什么?怎么写?----联系---- spring.factoriesSpringBoot官方文档中有大量的配置,我们无法全部记住,官网:https://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/appendix-application-properties.html#core-properties[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KaIxg1aH-16

2022-02-25 18:21:36 2545

原创 【狂神JAVA】MyBatis笔记

简介自学的【狂神JAVA】MyBatis分享自写源码和笔记,希望对大家有帮助本人配置jdk13.0.2 (jdk1.7以上均可)Maven 3.6.3MySQL 5.7.23 (mysql5.6以上均可)1. 配置官网文档: https://mybatis.org/mybatis-3/zh/getting-started.htmlpom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://

2022-01-21 22:39:40 2685

原创 垃圾回收算法

进行分代回收算法时,幸存区无法容纳下伊甸园的存活对象怎么办呢?请大佬回答评论

2021-12-19 15:52:43 2538

原创 一道关于String的易错习题

*/ @Test public void test4(){ String s1 = "javaEEhadoop"; String s2 = "javaEE"; String s3 = s2 + "hadoop"; System.out.println(s1 == s3);//false final String s4 = "javaEE";//s4:常量 String s5 = ...

2021-11-01 22:30:27 3644

原创 String 常用方法

int length():返回字符串的长度: return value.lengthchar charAt(int index): 返回某索引处的字符return value[index]boolean isEmpty():判断是否是空字符串:return value.length == 0String toLowerCase():使用默认语言环境,将 String 中的所有字符转换为小写String toUpperCase():使用默认语言环境,将 String 中的所有字符转换为大写Strin

2021-11-01 22:29:51 3953

原创 增强for循环

在遍历数组,字符串等集合时,可以调用用for(集合元素类型 局部变量 :集合对象)来遍历,但是实际上for内部调用了迭代器iterator,因此注意看代码方式二,并没有改变原集合属性值。//练习题 @Test public void test3(){ String[] arr = new String[]{"MM","MM","MM"};// //方式一:普通for赋值// for(int i = 0;i < arr.length;

2021-10-31 20:09:13 2592

原创 JAVA String类特点

String:字符串,使用一对""引起来表示。1.String声明为final的,不可被继承2.String实现了Serializable接口:表示字符串是支持序列化的。(对象是可以进行传输的,以字节流通过网络传给对方,对方可以再还原回来)实现了Comparable接口:表示String可以比较大小3.String内部定义了final char[] value用于存储字符串数据4.String:代表不可变的字符序列。简称:不可变性。 体现:1.当对字符串重新赋值时,需要重写指定内存区域赋值

2021-10-26 10:39:46 3989

原创 String实例化两种方式的区别

如上图所示,第一种直接赋值的是str1地址直接指向常量池中的“abc”,假如“abc”的地址值为1234,那么str1所存的地址值就是1234。而注意str2存储的地址为堆中的value地址,我们不妨假设为3456,这里value所储存的东西为常量池"abc"的地址1234.由于String的不可变性可知,若我们定义一个Strin str3= “abc”,则str3=str1String s = new String(“abc”);方式创建对象,在内存中创建了几个对象?两个:一个是堆空间中new结构,

2021-10-25 22:18:26 3807

原创 ROS-手势控制小海龟移动

手势控制小海龟移动这是很早之前学习ros做的一个小demo,适合初学者学习。一.要求要求通过电脑自带摄像头检测手势动作控制小海龟移动二.问题分析本设计需要运行三个节点,第一个节点为reconition(发布),通过采用传统的视觉算法检测手势动作,并将检测完后的数据传递到command(手势订阅)节点,command(海龟运动发布)节点订阅到手势信息后进行判断,并将相应指令传递给小海龟/turtle1/cmd_vel’,控制其运动。note:其实也可以不必采用传统的视觉检测算法,也可以采用深度学习

2021-10-25 12:22:22 5760 2

原创 sleep方法和wait()的异同

sleep方法和wait()的异同1.相同点:一旦执行方法,都可以使得当前线程进入堵塞状态2.不同点:1)两个方法声明位置不同:sleep是在Threa类中的方法,wait()是在Object类中的方法2)调用的要求不同:sleep()可以在任何需要的场景下调用。wait()必须在同步代码块中调用3)关于是否释放同步监视器:两个都在同步代码块和同步方法时,sleep()不释放同步监视 器,但是wait()释放同步监视器。解释:其实他们的不同点在于他们所处的类的位置不同,wa

2021-10-21 21:54:16 4053

原创 多线程死锁解决方法

多线程死锁解决方法 java里面,多线程死锁共分为两种方法,第一种为synchronized方式,第二种方法为lock锁(JDk 5.0 新增)synchronized方式 其主要分为同步代码块与同步方法。同步代码块方式一:同步代码块*synchronized(同步监视器){ //需要被同步的代码}说明:1.操作共享数据的代码,即为需要被同步的代码。 -->不能包含代码多了,也不能包含代码少了。 2.共享数据:多个线程共同操作的变量。比如:ticket就

2021-10-21 20:37:13 4948 3

狂神springmvc 笔记,同b站课程

狂神springmvc 笔记,同b站课程

2022-05-11

狂神 springboot 笔记 同b站课程

狂神 springboot 笔记 同b站课程

2022-05-11

狂神 spring 笔记 同大佬课程

狂神 spring 笔记 同大佬课程

2022-05-11

手势控制小海龟.zip

ros 手势动作控制小海龟移动

2021-10-25

空空如也

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

TA关注的人

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