自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 get和post请求有哪些区别

1.GET在浏览器回退是无害的,而POST会再次提交请求。2.GET产生的URL地址可以别Bookmark,而POST不可以。3.GET请求会被浏览器主动cache,而POST不会,除非手动设置。4.GET请求只能进行url编码,而POST支持多种编码方式。5.GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。6.GET请求在URl中传送的参数是有长度限制的,而POST没有。7.对参数的数据类型,GET只接受ASCII字符,而POST没有限制。8.GET比 POST更

2020-11-20 16:39:32 254

原创 ul中怎么实现带效果的有序列表

众所周知,html中有两种列表,一种是有序列表<ol>,一种是无序列表<ul>,但如果要在有序列表的数字上加效果,我暂时是没找到方法,除非换成图片,但是我们可以在无序列表上,自己手动打上数字,然后用<span>标注,然后给他加上效果,但是如果要实现与上方的容器对齐时,记得在<li>加背景效果,而不是在<ul>里面加背景效果,不然前面的黑点也会被覆盖,手动打上的数字前面空白就太长了,如下所示:![在这里插入图片描述](https://img-blog

2020-06-29 21:09:05 509

原创 关于html中浏览器无法自动播放问题的解决

在编写一个网站时,使用了html中的video标签,其中的一个属性为autoplay,设置了autoplay之后,用chrome运行这个html语言,会发现并不能够直接自动播放,然后经过查资料,发现2018年的时候,chrome自己就因为某些原因把自动播放功能给关闭了,如果要使用自动播放功能必须加上mute属性,只不过这样就会静音播放。不过如果使用iE浏览器的话,就无需使用mute了,IE浏览器是支持自动播放的,所以可以提醒客户,请使用IE浏览器。...

2020-06-22 17:25:18 1517 1

原创 HashSet的实现原理

一Hashset的底层由HashMap实现二.HashSet的值存放在HashMap的key上三.HashMap的value统一为present。

2020-06-10 22:01:23 235

原创 各种io及其区别

BIO:block IO 同步阻塞式IO,就是我们平常使用的传统IO,它的特点是模式简单使用方便,并发处理能力低。NIO:new IO同步非阻塞IO,是传统IO的升级,客户端和服务端通过channel(通道)通讯,实现了多路复用。AIO:Asynchronous IO是NIO的升级,也叫NIO2,实现了异步非堵塞IO,异步IO的操作基于事件和回调机制。...

2020-06-09 21:50:03 557

原创 sleep()和wait()的区别

1.sleep():是线程类(Thread)的静态方法,让调用线程进入睡眠状态,让出执行机会给其他线程,等到休眠时间结束后,线程进入就绪状态和其他线程一起竞争cpu的执行时间,因为sleep()是static静态的方法,他不能改变对象的机锁,当一个synchoronized块中调用看sleep()方法,线程虽然进入休眠,但是对象的机锁没有被释放,其他线程依然无法访问这个对像。2.wait():wait()是object()的方法,当一个线程执行到wait方法时,它就进入到一个和该对象相关的等待池,同时释放

2020-06-08 21:08:33 213

原创 Java中iterator的使用

1.使用方法iterator()要求容易返回一个iterator。第一次调用iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法属于Java.lang.iterator接口,被collection继承。2.使用next()获得序列中的下一个元素。3.使用hasNext()获得序列中的下一个元素。4.使用hasNext()检查序列中是否还有元素。Iteratior 是Java迭代器是最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两

2020-06-06 21:38:45 270

原创 Iterator和listIterator的区别

1.iterator可用来遍历set和list集合,但是lsititerator只能用来便利list。2.iterator对集合只能前向遍历,listIterator既可以向前也可以向后。3.listIterator实现了iterator接口,并包好其他的功能,比如:增加元素,替换元素,获取前一个和后一个元素的索引,等等...

2020-06-05 21:57:13 188

原创 线程安全的集合类

vector:就比arraylist多了个同步化机制(线程安全),因为效率较低。现在已经不太建议使用。在web应用中,特别是前台页面,往往效率时是优先考虑的。stack:堆栈类,先进先出。hashtable:就比hashmap多了个线程安全。enumeration:枚举,相当于迭代器。...

2020-06-04 20:33:26 215

原创 死锁的定义

死锁是指俩个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进行成为死锁进程。是操作系统层面的一个错误,是进程死锁的简称,最早在1965年由dijkstra在研究银行家算法时提出的,它是计算机操作系统乃至整个并发程序设计领域最难处理的问题之一。...

2020-06-03 19:29:18 446

原创 并行与并发之区别

一.并行是指两个两个或多个事件在同一时刻发生。并发是指两个或多个事件在同一时间间隔发生。二.并行是在不同实体上的多个事件,并发是在同一实体上的多个事件三.并行是在一个服务器上同时处理多个任务,并发在多台处理器上同时处理多个任务,如hadhoop分布式集群。所以并发编程的目的是充分处理器的每一个核,以达到最高的处理性能。...

2020-06-01 20:00:48 168

原创 装了一整天的mysql

今天在装mysql数据库,一直有问题,使用压缩包安装就显示没有vcruntime4_1.dll文件,下好这个文件,又显示无法访问,用.msi文件下载,就干脆直接连安装界面都到不了,后来我意识到应该是上次在装固态硬盘时,将原来系统盘的文件装到固态所划分的H盘时,出现了部分文件的丢失导致的,其实,这件事是有一定征兆的,比如我这段时间每次登录微信,第一次都会报错,然后无法登录,重新进入微信才能,进入chrome也是,也是一进去就报错,但是并不会影响我正常使用。所以我就决定重装系统,之前一直用的是windows7,

2020-05-29 21:09:08 92

原创 爬楼梯?斐波拉契数列!

一.题目描述假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1 阶 + 1 阶2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1 阶 + 1 阶 + 1 阶1 阶 + 2 阶2 阶 + 1 阶来源:力扣(LeetCode)链接:https://leetcode-cn.com/proble

2020-05-11 17:48:06 82

原创 二进制求和

给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。示例 1:输入: a = “11”, b = “1”输出: “100”示例 2:输入: a = “1010”, b = “1011”输出: “10101”来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-binary著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。思路:二进制的加法,从规则上来说,和十进制并无区

2020-05-10 22:33:41 181

原创 求最大子序和

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-subarray著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。思路:可以设置一个变量为sum,用来记录前几位的和,当和为负

2020-05-09 21:20:25 106

原创 递归算法求解外观数列

一.题目描述外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。前五项如下:1112112111112211 被读作 “one 1” (“一个一”) , 即 11。11 被读作 “two 1s” (“两个一”), 即 21。21 被读作 “one 2”, “one 1” (“一个二” , “一个一”) , 即 1...

2020-05-06 19:59:35 136

原创 利用栈解决括号匹配问题

1.题目描述给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输...

2020-04-30 10:24:51 308

原创 HashMapd的实现原理

1.HashMap概述:HashMap是由基于哈希表的Map接口的非同步实现。此实现提供所有的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变2.HashMap的数据结构:在java编译语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),s所有的数组结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap实际上是一...

2020-04-27 11:27:14 95

原创 java中collection和collections的区别

1.java.util.Collection是一个集合接口(集合类的一个顶级接口)。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在java类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式,其直接继承接口有List和Set。2.Collection则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进...

2020-04-25 14:37:11 119

原创 利用贪心算法求解买卖股票问题

一.贪心算法贪心算法就是一个逐步求最优解的算法二.题目描述给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格...

2020-04-22 15:00:49 745

原创 java中关于Collection及其子类及其再传子类的一点总结

一.存储对象1.Collection接口存储一组不唯一,无序的对象2.List接口存储一组不唯一,有序(插入顺序)的对象3.Set接口存储一组唯一,无序的对象4.Map接口存储一组键值对象,提供key到value的映射二.ArrayList和Linkledist1.ArrayList实现了长度可变的数组,在内存中分配连续的空间,遍历元素和随机访问元素的效率比较高2.LinkedLi...

2020-04-20 16:31:44 152

原创 加一问题中的灵光一闪

给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。来源:力扣(L...

2020-04-15 19:51:24 131

原创 暴力法实现Strstr()

class Solution { public int strStr(String haystack, String needle) { if(needle.equals("")){ return 0; } if(needle.length()>haystack.length()){ r...

2020-04-14 21:15:07 115

原创 双指针的妙用

一.题目给定一个仅包含大小写字母和空格 ’ ’ 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。如果不存在最后一个单词,请返回 0 。说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/length-of-last-...

2020-04-09 08:44:44 140

原创 java中Map的用法(一)

package cn.com.map;import java.util.HashMap;import java.util.Map;//向map集合中添加Key为key,Value为value的元素,当添加成功时返回null,否则返回value。////就是说Map集合中的Key是不能重复的,这就类似于Set集合中元素不能重复,但是Map集合中的Value是可以重复。public cl...

2020-04-08 20:30:44 833

原创 java中异常机制总结

一.什么是异常异常就是程序在运行和编译过程使程序无法正常运行的错误。二.java异常处理机制java的异常处理是通过五个关键字来实现的:try,catch,finally,throw,throws三.异常分为Checked异常和运行时异常三.一Checked异常必须捕获或者声明抛出三.二运行时异常不要求必须捕获或者声明抛出四.try-catch-fianlly中存在return语句的...

2020-04-07 21:31:15 71

原创 String类常用汇总(二)

一.getBytes():返回字符串的 byte 类型数组。getBytes()返回一个字符串的byte类型数组 byte a[]=str.getBytes(); for (byte b:a ) { System.out.println(b); }二.length():返回字符串长度 Syste...

2020-04-05 09:21:57 48

原创 String类常用方法汇总(一)

String是java中最常用的一个引用类型,字符串也有很多常用的方法,总结如下:1.indexOf():返回指定字符串的索引2.charAt():返回指定索引处的字符...

2020-04-04 20:35:13 60

原创 解决输入时类型不匹配整型的方法——hasNextInt()

今天在写一个小项目的时候,发现在输入的时候,你声明的是一个整型,但是如果输入的是其他类型,就会出现异常,类型不匹配的异常,程序就会终止退出,如果想要在出现异常的情况下,接着运行呢,try-catch当然可以,如果不用这个呢?所以我就学到了一个方法,hasNextInt()。一.原理hasNextInt()起到了判断控制台输入的是不是整型数字的作用。二.运用实例我这程序是通过输入序号来判断是...

2020-04-02 20:02:08 808

原创 双指针算法的另一种运用

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

2020-04-01 15:26:44 92

原创 约瑟夫环的解法其一

问题来源:据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从。首先从一个人开始,越过k-...

2020-03-30 16:49:12 145

原创 java中字符串类一览

java中关于字符的类:String,StringBuilder,StringBufferString类是学习java的人接触到的第一个关于java字符串的类,它区别于StringBuffer,StringBuilder的地方它声明的是不可变的对象,每次操作都会生成新的String对象,每次将指针指向新的String对象,而StringBuffer和StringBuilder可以在原有对象的基础...

2020-03-28 15:00:18 103

原创 关于java中取小数的方法

昨日刷题时,一题目要求需要将输出的数保留小数点后四位,不会,在网上找了下方法,遂记录如下:![在这里插入图片描述](https://img-blog.csdnimg.cn/20200327152016744.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZ...

2020-03-27 15:20:44 864

原创 JDK8前后的接口特性及接口与抽象类的对比

一.JDK8之前的接口特性1.接口中的变量都是静态常量,必须显示初始化2.接口中所有方法默认都是public abstract3.接口没有构造方法,不可以被实例化,但可以被实现4.实现类必须实现接口的所有方法5.实现类可以实现多个接口5.1implements,多个接口使用逗号隔开二.JDK新增的接口特性JDK1.8后,接口里可以有默认方法(方法体)了1.default关键字-默...

2020-03-26 16:04:24 638

原创 基于双指针思想的删除排序数组中的重复部分

一.问题描述给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array作权归领扣...

2020-03-25 10:24:03 70

原创 equals和==的比较

一.==对于引用类型和简单数据类型的作用不同对于简单数据类型而言,就是比较值。对于引用类型而言,是比较引用是否相同。如图所示:可以看到,当为简单数据类型时,就为true;如果String类型不声明新的空间时,也为true;二.equalsequals本质上就是,只不过String,Interger等把他进行了重写,如下图所示这里我们发现,这里引用类型的equals()的返回值...

2020-03-25 09:50:22 175 1

原创 java基于面向对象思想的模拟汽车租赁系统

一.需求分析汽车租赁系统用户需要完成租赁汽车的操作,并将租金结算。二.总体设计汽车租赁公司内有两种车,分别是轿车和客车,所以需要设计两个类,轿车类和客车类,这两个类都继承于共同的父类,汽车类。由上图可知,轿车和客车公有的属性是品牌,日租金,车牌号,所以这些属性可以定义在父类中,公有的方法为计算租金,因为折扣不同,需要在两个子类分别具体实现,所以在父类中就定义为抽象类,所以父类就要定义为抽...

2020-03-20 20:47:13 2115

原创 第一个思维导图

思维导图是个很有用的学习工具,以后也得积极使用

2020-03-17 21:07:23 75

原创 java求解最长公前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/l...

2020-03-16 20:17:40 94

原创 java面向对象学习札记4

一.静态方法中的注意事项1.在静态方法中不能使用this和super2.在静态方法中不能调用实例变量和实例方法3.在静态方法中可以直接访问静态变量和静态方法4.在实例方法中不可以定义一个静态变量,但可以访问静态变量5.静态类和方法只加载一次二.关于继承的注意事项1.super用来调用父类的非private方法,属性和构造方法2.利用super调用父类的构造方法,必须位于方法的首行...

2020-03-15 21:53:56 61

空空如也

空空如也

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

TA关注的人

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