自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 浅谈Java中的单例模式及四种懒汉模式

单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。分为饿汉模式和懒汉模式饿汉模式是在类加载时便初始化,这里不做详谈,而懒汉模式则是在有人使用它的时候加载。主要针对懒汉模式对其进行不断优化。懒汉模式 1 – 不安全:一开始是没有对象的,有人需要的时候,才会实例化。而且第一次使用的时候进行实例化,以后不再进行。线程不安全。(典型的判断-修改模式,不安全)public class 懒汉模式1 { private stat

2021-02-19 20:54:05 302

原创 Cookie和Session的区别

cookie数据存放在客户的浏览器上,session数据放在服务器上。cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。设置cookie时间可以使cookie过期。但是使用session-destory(),我们将会销毁会话。session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能考虑到减轻服务器性能方面,应当使用cookie。单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个c.

2020-12-21 23:22:46 106

原创 IDEA配置Tomcat8.5.57免安装版创建maven项目及Web项目配置

工具链接maven本地仓库:链接:https://pan.baidu.com/s/1-Jrltb9f5H-Lu8dpSKIHZg 提取码:tas4Tomcat8.5.57免安装版:链接:https://pan.baidu.com/s/1Sg96Vs7ht2WERnV739zwAA 提取码:s2dx1. 创建maven项目首先打开IDEA,创建新的项目。选中maven,点击next。填写好项目名以及项目路径。点击下方Finish。这是初始项目目录。2. 初始项目配置点击

2020-12-07 23:10:03 403 1

原创 Java判断两个二叉树是否相同+递归

题目要求给定两个二叉树,判断他们是否相同。注意:必须是完全相同,如果节点值、值得顺序不同都视为不同的树。力扣练习题:LeetCode-100_相同的树思路:首先判断两树null的情况。如果A树null且B树不null或者A树不null且B树null,那么可以肯定两树肯定不相等,返回false。if ((A == null && B != null) || (A != null && B ==null)) { return false;

2020-11-20 00:33:54 572

原创 jdbc连接包+IDEA连接mysql数据库的配置

注意:通过Java编程操作数据库前,必须提前安装mysql数据库,在博主另外一篇博客有解:mysql数据库安装与配置JDBC包连接数据库前,必须要下载jdbc连接包,根据自己的jdk版本下载不同版本的jdbc 包。我把jdbc包放在某云,里面含有不同版本的jdbc包,请自行下载。链接:https://pan.baidu.com/s/1yQMuDn6-c64BJ6nSGS6Msg 提取码:hyu3将jdbc包解压,放在任意一个地方(因为不用安装,只需要包含它)。建议和项目放在一起。IDEA配置

2020-11-18 23:18:24 434

原创 MySql数据库社区版安装版安装与环境配置数据库配置

下载mysql数据库是轻量、开源的数据库,适合个人使用。我把mysql5.7版本安装版放在某云,自行下载。链接:https://pan.baidu.com/s/1JYcwAkTIBmFE0qjkroUS4Q 提取码:zkni安装单击右键,点击安装一路默认安装即可。环境变量配置依次打开控制面板–>系统和安全–>系统–>高级系统设置在系统属性界面,点击环境变量在系统变量里,点击新建,变量名为大写MYSQL_HOME,变量值为mysql的安装根目录。默认在C:\pro

2020-11-17 01:57:58 258

原创 修改文件格式或创建任意格式文件

文件名由文件的名称和后缀组成。默认情况下只显示名称。修改后缀打开任意一个文件,点击查看,勾选上文件扩展名,即后缀。此时,我们在重命名文件名时,可以看到文件名后面的**.txt或者.jpg**等等格式名。可以通过修改后缀来修改文件类型。修改后,系统会弹出一个确认提示框,点击确定即可直接通过修改文件后缀名来修改文件类型。前提是允许的类型转变也可以在创建文本文件时,直接修改后缀名,达到创建任意格式文件的目的。...

2020-11-17 01:53:47 491 1

原创 通过栈操作求棒球比赛结果

你现在是一场采特殊赛制棒球比赛的记录员。这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分。比赛开始时,记录是空白的。你会得到一个记录操作的字符串列表 ops,其中 ops[i] 是你需要记录的第 i 项操作,ops 遵循下述规则:整数 x - 表示本回合新获得分数 x“+” - 表示本回合新获得的得分是前两次得分的总和。题目数据保证记录此操作时前面总是存在两个有效的分数。“D” - 表示本回合新获得的得分是前一次得分的两倍。题目数据保证记录此操作时前面总是存在一个有效的分数。“C

2020-11-15 22:47:52 81

原创 Gitee码云git创建仓库和提交代码

Gitee码云码云是国内的代码托管平台,功能和GitHub几乎一致。但他是国内的,所以是中文界面,最主要是网速很好很稳定。码云注册自己去官网界面注册即可。这里不再赘述。提交工具利用Git客户端。下载地址:Git-2.22.0命令行操作下载地址(如果链接失效可以私信重发)Git可视化界面操作(小乌龟)下载地址创建仓库和提交创建仓库的方法有很多,这里讲述简单使用的一种。进入码云,点击创建仓库。基本配置可以按如下设置。进入到你电脑的某个目录,也就是你将来要存放代码的目录。点击鼠标右键,选择

2020-11-14 00:19:59 427

原创 Map哈希表键值对高效查找两数之和

题目描述:给定一个整型数组nums[ ]和一个目标值target,要求找到数组中两数之和为target的下标。暴力法:双循环。外层遍历数组,内层遍历数组,两两之间进行相加比较。这样效率低下,时间复杂度(On^2)。Map哈希表:哈希表中存在一个键和对应的一个值,简称键值对。遍历当前nums[ ]数组。如果target - nums[i]的值不在哈希表中,将nums[ ] 中的值和对应的下标存在哈希表中。直到在哈希表中找到,或者遍历完数组退出。步骤用nums[] = {3,6,9,4,7}

2020-11-06 22:03:42 329

原创 数组实现循环单端队列

队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(FirstIn First Out)。 入队列:进行插入操作的一端称为队尾(Tail/Rear)出队列:进行删除操作的一端称为队头。循环队列:将队头和队尾以某种方式关联起来,在逻辑上达到循环一圈的目的。力扣上有原题,我是按照力扣上的题目要求写的。力扣622–设计循环队列思路:通过数组作为底层结构。定义一个头指针,指向第一个元素。定义一个尾指针,永远指向最后一个数据的下一个位置。当要添加

2020-11-05 22:53:10 157

原创 单链表的实现(单向无头不循环链表)+增删改查等功能

注意:* 如果想弄清楚单链表的原理,可以通过画图+代码去理解。* 我的单链表实现了11个功能,文章前面具体列出了每个方法的代码,以及详细的代码注释和个人解释。* 如果只要整个源代码,可以直接到文章末尾。包含完整的单链表源代码和main函数测试代码,以及每个方法的测试结果。* * 码字不易,也达不到深入理解,但都是经过测试可以运行的。如果有问题,欢迎提出,欢迎白嫖。1. 实现链表中的单向无头不循环链表单向指的是每个节点只有后继节点的引用。无头指的是,不含有头节点,也就是头节点不固定。在本次

2020-10-21 00:20:43 147

原创 给定两个整型数组, 交换两个数组的内容

给定两个整型数组,假设两个数组长度相等,交换两个数组内容。思路:通过循环,遍历其中某一个数组。(因为两个数组长度相等)遍历时候,定义一个中间变量,用来交换两个整型数组相同下标的内容。package day7_10_17;import java.util.Arrays;/** * @author:fover * @date:2020/10/18 1:21 * @version:1.0 * @function:给定两个整型数组, 交换两个数组的内容,假设两个数组长度相同 */pu

2020-10-18 01:38:00 779

原创 奇数放到数组后面

给定整型数组, 把所有的偶数放到数组前面, 把所有奇数放到数组后面。思路:定义两个指针,左指针指向最左边,右指针指向最右边。左指针往右走,寻找第一个奇数,右指针往左走,寻找第一个偶数。交换左右两个数。左指针+1,右指针-1。循环进行2-3-4步骤。package day7_10_17;import java.util.Arrays;/** * @author:fover * @date:2020/10/17 20:45 * @version:1.0 * @function:

2020-10-18 01:19:23 160

原创 冒泡排序(基础班-->优化版-->优化终极版)

冒泡排序1. 所谓的冒泡排序就是通过两两相邻数组间的比较,将大的沉到下面,小的放上面。假设有一个待排序的数组{3,9,6,4,7}。相邻数组之间进行比较。第一轮两两数组之间进行比较,我们俗称第一趟:经过第一趟的相比,我们发现最大的数字9沉到了最下面。接下来进行第二趟的比较:经过第二趟的比较,我们发现次大数字7到了倒数第二位。接下来进行第三趟和第四趟的比较:每当我们进行一趟相比较,数组中的一个数字便会被确定位置。5个数字,一共经过4趟比较,便可以确定他的序列。2. 基础版冒泡排序。代

2020-10-17 00:09:19 134

原创 青蛙跳台阶(普通版)循环+递归实现

青蛙跳台阶1. 问题要求有n阶台阶,一只青蛙一次只能跳1个台阶或者2个台阶,问青蛙跳上这个n阶台阶一共有多少种跳法。跳1个台或者跳2个台阶的顺序不一样,次数不一样都算不同的跳法。2. 思路分析如果只有1阶台阶,那么青蛙只需要跳一级便可以。共1种跳法。如果有2阶台阶。那么它可以跳1个台阶,再跳1个台阶,这是第一种跳法。或者直接跳2个台阶。共2种跳法如果是3阶台阶。第一种跳法可以1个台阶1个台阶的跳(如图红线),第二种跳法可以跳1个台阶再跳2个台阶(如图蓝线),第三种跳法可以跳2个台

2020-10-16 00:14:11 333

原创 递归求解汉诺塔(图文+实例代码)

汉诺塔问题分析:汉诺塔中有A,B,C三个柱子,A柱子上有n个上小下大的盘子。要求每次只能移动一个盘子且小盘子只能在大盘子上面,最终把A柱子上的盘子全部移动到C柱子上。思考过程假如只有一个盘子,那么直接将盘子从A移动到C。如果有两个盘子,那么先将A柱子上的移动到B柱子,再将A柱子盘子移动到C柱子,再将B柱子盘子移动到C柱子。第一步:第二步:第三步:如果有三个盘子。我们可以将上面两个盘子看成一个整体,那么此时的问题便是两个盘子的子问题,这便涉及到了递归思路。如下图

2020-10-14 18:04:19 378

原创 基本类型和变量

1.基本数据类型Java中的数据类型包含byte、short、int、long、float、double、char、boolean共8种。定义格式以及所占字节数:byte a = 126; //1字节short b = 250; //2字节int c = 360; //4字节long d = 560; //8字节float e = 12f; //4字节double f = 36.0; //8字节char g =

2020-10-10 16:48:59 227

原创 初识Java和第一个“Hello Java”

1. Java的优势简单性:Java语法是C++语法的“纯净版本”,这里没有头运算,指针运算(甚至指针语法)、结构、联合、操作符重载、虚基类等。面向对象:在Java的世界里,一切皆对象。 Java的面向对象特性与C++旗鼓相当,与C++的主要不同点在于多重继承。在Java中,取而代之的是更简单的接口概 念。而且与C++相比,Java提供了更丰富的运行时自省功能。分布式(微服务):Java有丰富的例程库,用于处理像HTTP和FTP之类的TCP/IP协议。Java应用程序能够通过URL打开和访问网络上的

2020-10-10 15:32:50 164

原创 细数Java中的9种变量和2种常量

1.变量变量指的是程序运行时可变的量,相当于开辟一段内存空间来保存一些数据。1.1整型变量int代码示例:int a = 20;//定义一个整型变量a,并赋初值20一个int变量占4个字节。1.2长整型变量long代码示例:long a = 10L;//定义一个长整型变量,赋初值10L初始化设定的值为10L,表示一个长整型的数字。写为10l也可以。(L:大写字母;l:小写字母)Java中long类型占8个字节。1.3双精度浮点型变量double代码示例:double a =

2020-07-20 00:24:37 240

小型图书管理系统Java

用Java语言写的一个超级简单的小型图书管理系统,整体框架已经搭好,目前只有管理员、普通用户。功能有添加图书,查找图书,借阅图书,归还图书,删除图书,显示所有图书等基础功能。因为框架已经搭好,可以很容易添加所需要的功能。

2020-10-30

空空如也

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

TA关注的人

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