自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 力扣:26删除有序数组中的重复项

题目:给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。例子:输入:nums = [1,1,2]输出:2, nums = [1,2]解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2 。不需要考虑数组中超出新长度后面的元素。看到此题我就想到了昨天算法题,便立即想到了使用双指针的解法,首先我们使用两个指针

2021-08-12 21:59:47 108

原创 力扣:27移除元素

题目:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。例:输入:nums = [3,2,2,3], val = 3输出:2, nums = [2,2]解释:函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。例如,函数返回的新长度为

2021-08-11 21:54:37 79

原创 力扣:15.三数之和

题目:给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。例子:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]] 首先我想了一种和第一题两数之和类似的解法,首先将每个数放进一个Map里面当kay,value是它的位置,然后两层循环遍历算数组的和,但是这种方法实现起来很麻烦,首先需要判断两数之和

2021-08-10 22:41:57 108

原创 力扣:1.《两数之和》

题目:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。本题在我面试的时候遇到过,当时说的是两个for循环,找出相加为9的两

2021-08-09 15:57:39 94

原创 java8新特性之Stream流

创建stream的三种方式一、通过集合创建Stream(1)顺序流List<Employee> employees = EmployeeData.getEmployees();Stream<Employee> stream = employees.stream();(2)并行流Stream<Employees> employeeStream = employees.parallelStream();二、通过数组创建int[] arr = new int

2020-12-02 17:58:14 134

原创 java语言高级部分(多线程)

多线程基本概念:程序、进程、线程。(1)程序:是为了完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码。静态对象。(2)进程:是程序的一次执行过程,或是正在运行的一个程序。(3)线程:进程可以进一步细化为线程,是一个程序内部的一条执行路径。线程的创建和使用方式一:继承Thread类(1)创建一个继承于Thread类的子类。(2)在子类中重写Thread中的run()方法。(将此线程要执行的操作声明在run中)(3)创建Thread子类对象。(4)通过此对象调用start(

2020-08-04 22:26:30 118

原创 java基础知识总结(面向对象完结加异常处理)

抽象类与抽象方法(1)abstract:抽象的。(2)abstract可以用来修饰:类、方法。1)abstract修饰类:抽象类①此类不能被实例化。②此类中一定有一个构造器,便于子类初始化的时候使用。③开发中,都会提供抽象类的子类,让子类去实例化,完成相关操作。2)abstract修饰方法:抽象方法①只有方法的声明没有方法体。②包含抽象方法的类一定是一个抽象类,反之不成立,抽象类中不一定包含抽象方法。③若子类重写了抽象类中的所有抽象方法后,这个子类就可以被实例化,否则,他还是一个抽象类。

2020-08-02 08:05:18 132

原创 java基础知识总结(面向对象篇3包括单例设计模式等)

Object类的使用(1)Object类是所有java类的根父类。(2)如果在一个类的声明中未使用extends关键字指向父类,则默认父类为java.lang.Object类。(3)Object类中的功能(属性、方法)具有通用性。属性:无方法:equals() / toString() / getClass() / hashCode / clone / finalize() / wait() / notify() / notifyAll()(4)Object类只声明了一个无参构造器。"=="与

2020-07-30 23:26:32 129

原创 “==“与“equals()“

”==“我们都知道,用在基本数据类型时比较的是变量中存储的具体值。如下面这段代码就是比较的6与7是否相等,显然返回一个false,这个是很好理解的。int a = 6,b = 7;Systom.out.println(a == b);那么我们把它用在引用数据类型中看看,是否还时比较的引用数据类型中给他赋的值吗?所以我就做了一个以上的实验,建了一个Circle类,new了两个对象,他们初始化的时候radius都为1,如果按照数据类型的想法,他的运行结果可能是true,因为他们的属性值都一样,那我们

2020-07-29 21:37:49 269

原创 java基础知识总结(面向对象篇2)

方法重载(1)概念:在同一个类中,允许存在一个或多个同名的方法,只要他们的参数列表中参数类型或者参数的个数不同即可。(2)两同一不同:1)同:①在同一个类内。②方法名相同。2)不同:参数列表不同。(3)判断:只和参数列表有关,和权限修饰符、返回值类型、方法体都没有关系。(4)如何调用具体的方法:①先找方法名。②找到此方法名相对应的形参列表。可变个数的形参(1)javaSE 5.0中提供了Varargs机制,允许直接定义能和多个实参相匹配的形参。从而,可以用一种更简单的方式,来传递

2020-07-26 22:21:02 107

原创 java基础知识总结(面向对象篇1)

面向对象简介1.三个重要方面:(1)Java类及类的成员:属性、方法、构造器、代码块、内部类。(2)面向对象的三大特征:封装、继承和多态。(3)其他关键字。2.面向过程和面向对象两者都是一种思想,面向对象是相对面向过程而言的。(1)面向过程:强调功能行为,以函数为最小单位,考虑怎么做。(2)面向对象:将功能封装到类中,强调拥有具体功能的对象,以类/对象为最小单位,考虑谁来做。3.类和对象(1)类:是一类事物的描述,是抽象的,概念性的定义。(2)对象:是类的真实个体,也称为实例。

2020-07-25 19:50:57 87

原创 java知识基础总结(5)

数组(1)定义:数组(Array),是多个相同类型的数据按一定顺序排列的集合,并使用一个名字命名,并通过一个编号的方式对这些数据进行统一管理。(2)常见概念:数组名、下标(或索引、角标)、元素、数组的长度。(3)特点:①数组是有序排列的。②数组属于引用数据类型。数组的元素既可以是基本数据类型的,也可以是引用数据类型的。③创建数组对象会在内存中开辟一整块连续的空间。而数组名中引用的是这块连续空间中的首地址。④数组的长度一旦确定,就不能修改。(4)数组的分类:①按照数组:一维数组、二维数组、多

2020-07-23 21:21:17 99

原创 java基础知识总结(4)

程序流程控制(1)定义:程序流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块。(2)分为三种基本流程结构:顺序结构、分支结构和循环结构。顺序结构顺序结构没什么可以总结的,就是我们的程序从上到下的执行。分支结构1.if-else(1)if-else有三种情况,分别为:①if(条件){执行语句;}这种情况,如果小括号里为真,则执行大括号里的执行语句,否则不执行。②if(条件){执行语句;}else{执行语句;}这种情况,如果第一个小括

2020-07-21 21:07:10 112

原创 java基础知识总结(3)

运算符(1)定义:运算符是一种特殊的符号,用以表示数据的运算、赋值和比较。(2)分类:算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、三元运算符。算数运算符(1)/(除法运算):除法运算就是我们数学中的除法,但是在java里使用我们有需要注意的地方,当我们除数和被除数都是int类型的时候,我们的结果也是一个除数,这样就会有一些问题.例如:我们做12/5,我们在数学中的结果时2.4,但是程序中,我们知道,int类型的和int类型的相除不会出现小数,所以他的结果是2,我们将他的结果赋值给do

2020-07-20 21:23:03 125

原创 java基础知识总结(2)

关键词和保留字关键词:(1)定义:被java语言赋予了特殊含义,用作专门用途的字符串。(2)特点:关键字中所有字符都为小写。保留字:(1)定义:现有java版本尚未使用,但以后版本可能会作为关键字使用。(2)注意:我们自己命名标识符的时候要避开保留字。标识符(1)定义:java对各种变量、方法和类等要素命名时使用的字符序列称为标识符。(2)技巧:凡是我们自己可以命名的地方都叫做标识符。1.定义标识符的规则。(不遵守则编译不通过)(1)标识符只能用26个大小写英文字母、0~9、_或$来表

2020-07-19 21:50:52 117

原创 java基础知识总结(1)

bit与byte(1)bit:bit是计算机中最小的存储单位,一个0或一个1就表示一个bit。(2)byte:byte是数据存储的基本单位,一个byte由8个bit组成。1个byte又称为一个字节。(2)需记住:1KB=1024B1MB=1024KB1GB=1024MB1TB=1024GB这也是为什么我们程序员觉得1024是一个整数的原因,要记住,10月24日是我们程序员的节日哦。内存(RAM)内存是带电存储的(断电数据就会消失),所以长时间的存储程序或数据就要用硬盘。但是内存的读取速度

2020-07-18 20:33:03 193

原创 Redis五大基本类型常用命令学习总结

我们从Redis的官方简介中可以看出,Redis中的数据类型包含五大基本类型他们分别为:string、hash、list、set、Zset,今天我们来总结一下他的常用命令。String:(1)set与get命令:set是向Redis中写入键值对,get是从Redis中获取键值对。(2)mset与mget命令:这个命令和get与set命令一样,也是向Redis中插入与获取数据的,但是mset与mget可以一次性写入和读取多个数据。(3)incr与decr命令:这两个命令是可以使Redis中的数据每

2020-07-16 19:16:05 372

原创 maven依赖无法下载的问题

今天我按照一个老哥的帖子写spring实战这本书中spring mvc部分,我发现我没有添加slf4j依赖,我引入这个包时报错。然后我就百度slf4j的maven函数依赖 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</ar...

2020-01-09 18:16:34 607

原创 整合spring mvc与mybatis时出现了war包加载失败,程序无法运行的情况。

整合spring mvc与mybatis时出现了war包加载失败,程序无法运行的情况。作为萌新的我,今天我在整合spring mvc与mybatis时,我将上个mybatis项目里的dao,mapper,service复制过来之后发现我的上个项目的模型的包名为modle,而本包名为modle,所以出现了许多报错,随后我把报错的地方引用的包名修改后运行,发现war包启动失败,程序无法启动。随后...

2019-12-12 16:32:58 371

空空如也

空空如也

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

TA关注的人

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