自定义博客皮肤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)
  • 收藏
  • 关注

原创 新手使用git工具详细步骤说明

git使用已经成了每个程序员的必备技能,很多在校期间没有使用过git的新员工到工作岗位上往往是有点懵的,今天用自己的实际经验给大家详细说明git的详细步骤。0 准备工作开始使用之前需要下载按安装git桌面工具,下载链接 https://git-scm.com/downloads另外还需要公司代码仓库给你分配的账号密码,如果是github需要自己注册账号。1 从仓库获取源代码1.在仓库中点击clone按钮,复制工程的链接。2.在本地要保存代码的位置新建文件夹,右键该文件夹,选择 Git Bush

2020-11-18 15:25:56 1795 2

原创 java-锁升级-学习笔记

java中锁的状态共有四种:无锁状态、偏向锁、轻量级锁、重量级锁1 锁升级随着锁的竞争,锁可以从偏向锁升级到轻量级锁,再升级到重量级锁。但是锁的升级是单向的,不会出现降级的情况。轻量级锁的本意是在没有多线程竞争的前提下,减少传统的重量级锁使用产生的性能消耗。轻量级锁适应的场景是线程交替执行同步块的情况,如果存在同一时间访问同一个锁的情况,就会导致轻量级锁升级到重量级锁。2 偏向锁对于绝大部分锁,在整个同步周期内不仅不存在竞争,而且总由同一线程多次获得。偏向锁的目的是在某个线程获得锁之后,消除这个

2020-09-07 22:41:17 203

原创 springboot项目中interceptor拦截器开启无效的解决方案

最近在做项目的时候发现interceptor用的继承WebMvcConfigurerAdapter的方式已经过时了,官方推荐的是实现WebMvcConfigurer接口的方式,然而我用此方式并重写了addInterceptors方法后拦截器无效,经过查看源码和论坛提问最终找到了解决方案。1 实现WebMvcConfigurer接口@Configurationpublic class WebConfig implements WebMvcConfigurer { @Override pu

2020-07-17 16:00:02 3729

原创 java String类为什么是final的?

首先来看一下jdk1.8中的String类的源码我们可以看到String类是被final修饰的,说明String类是不能够被继承的。另外,我们可以看到用于存储数据的是一个char[]数组,它也是被final修饰的,这说明它是不能修改指向的地址的,(但是可以被直接修改内部的字符变量),为了保证String对象不被改变,有以下措施:(1)不对外暴露value数组中的值(2)将String类设置为final,不可被继承,避免子类继承后改变value数组中的值。那么为什么String类要被final修饰

2020-07-13 12:08:27 360

原创 举例说明java动态代理

1 什么是代理模式代理模式是为其他对象提供一个代理以控制对某个对象的访问,代理类主要负责为委托了(真实对象)预处理消息、过滤消息、传递消息给委托类,代理类不现实具体服务,而是利用委托类来完成服务,并将执行结果封装处理。其实就是相当于明星与经纪人的关系,明星就是被代理类,经纪人是代理类,经纪人处理除了表演外的其他辅助工作,需要表演时调用明星的表演方法。其实就是代理类为被代理类预处理消息、过滤消息并在此之后将消息转发给被代理类,之后还能进行消息的后置处理。代理类和被代理类通常会存在关联关系(即上面提到的持

2020-06-28 15:37:46 155

原创 SpringBoot环境配置教程

1. 安装前准备在安装SpringBoot前,要先检查需要的基础软件是否配置好. 本文介绍IDEA下的SpringBoot的环境配置, 因此检查jdk, maven, idea就可以了.我用的环境分别是:jdk 1.8.0_231maven Apache Maven 3.6.1IDEA 2019.3.4SpringBoot 2.2.2.RELEASE2. Maven设置在maven安装目录下 ->conf ->settings.xml中的Profiles标签添加<prof

2020-05-17 13:02:59 684

原创 java中的自定义比较器

在java中很多时候需要我们自定义比较器, 例如在向TreeSet中添加元素时, 元素必须可比较. 本文介绍两种自定义比较器的方法:1. 实现Comparable接口Comparable接口中只有一个方法, compareTo()方法. 重写该方法使该类元素强制具有比较性. CompareTo()方法返回正数, 说明该对象大于传进来的对象, 返回0, 代表二者相等, 返回负数, 代表该对象小于传进来的对象.例如在Student类中, 实现该接口, 可以使得两个Student的对象进行比较.这种方式叫

2020-05-16 17:56:13 724

原创 java中基本数据类型和引用数据类型的区别

1.基本数据类型Java中有八种基本数据类型,分别是:byte:字节,内存中占8位,即一个字节,默认值为0。short:短整型,内存中占2个字节,默认值为0。int:整形,内存中占4个字节,默认值为0。long: 长整形,内存中占8个字节,默认值为0。float:单精度浮点型,内存中占4个字节,默认值为0。double:双精度浮点型,内存中占8个字节,默认值为0。char:字符型,...

2020-04-17 21:23:52 184

原创 IDEA中使用git管理分支

需求:我们已经将github上的一个项目clone到本地,并且在idea中已经配置好了相关git的账户密码等,在完成了一个新的功能后,需要创建一个新的分支,将代码更新到新分支上。1. 创建新分支在菜单栏VCS中选择Git -> Branches, 选择第一项new Branch,输入新分支的名称,如下图:这里的Checkout branch是默认勾选的,意思是将要操作该新的分支。2...

2020-04-10 18:46:45 851

原创 python绘制直方图横坐标标签竖直显示的方法

python中用matplotlib画图时,横坐标标签是默认横着显示的,如下图:看起来不太美观,要想使其竖直显示,使用下边一行代码即可:plt.xticks(rotation = 360)rotation默认是90,即为横着显示,改成360即可正常竖直显示,效果如下图:...

2020-04-05 21:33:49 20080 1

转载 java中不用科学计数法,直接输出double型数

我们发现在使用Java输出double型数时,如果数字十分大, 则会自动使用科学计数法表示, 但很多时候我们并不需要用科学计数法表示, 此时, 我们需要用到NumberFormat类:import java.text.NumberFormat;public class test { public static void main(String[] args) { ...

2020-04-02 12:32:49 1913

原创 C语言中结构体(包括嵌套结构体)大小的计算

要判断一个结构体所占的空间大小,大体来说分三步走:1.先确定实际对齐单位,其由以下三个因素决定(1) CPU周期WIN vs qt 默认8字节对齐Linux 32位 默认4字节对齐,64位默认8字节对齐(2) 结构体最大成员(基本数据类型变量)(3) 预编译指令#pragma pack(n)手动设置 n--只能填1 2 4 8 16**上面三者取最小的** ...

2020-03-31 18:51:45 2918 1

原创 百度地图api进行地理编码时显示 "status":240,"message":"APP 服务被禁用" 的解决方案

最近, 在使用百度地图api进行地理编码时用到网上的代码时, 无法返回经纬度坐标, 而是显示"APP 服务被禁用", 经过查看官方文档可知, 当前为V3.0版本接口文档,V2.0及以前版本自2019.6.18起新用户无法使用。因此,在使用之前编写的代码获取地理编码时, 要将URL改成如下的格式:http://api.map.baidu.com/geocoding/v3/?address=北京市...

2020-03-21 17:34:04 10425

原创 java面试题:StringBuffer类和StringBuilder类的区别

java中String类的特点:一旦被初始化, 就不可以被改变.因此, 如果要对字符串进行修改, 则需要用到另外两个类: StringBuffer和StringBuilder类. 这两个类的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuild...

2020-03-10 12:24:25 105

转载 Java的优先队列PriorityQueue

刷LeetCode时了解到了PriorityQueue, 查阅了 程序咖啡 的博客学到了很多, 特此记录下来, 并感谢原博主 程序咖啡 . 如有侵权, 请联系我删除.1.优先队列概述优先队列PriorityQueue是Queue接口的实现,可以对其中元素进行排序,可以放基本数据类型的包装类(如:Integer,Long等)或自定义的类对于基本数据类型的包装器类,优先队列中元素默认排列顺序是...

2020-03-06 18:33:41 154

原创 java中逻辑运算的短路机制

我们都知道java中&代表与运算, (逻辑运算a & 逻辑运算b)中, 只有a和b都为true, 结果才为true, 否则结果为false.||代表或运算, a或b任意一个为true, 结果为true, 两个全为false结果才为false.在使用这两个运算符时要注意其短路机制.与运算中, (逻辑运算a & 逻辑运算b), 如果a为false, 则不会判断b的真假...

2020-03-04 13:11:28 861

原创 java的System.arraycopy()方法

System.arraycopy(arr1, index1, arr2, index2, length);将数组arr1中指定个数的元素复制到数组arr2的指定位置中, 其中index1表示复制arr1的从index1索引处开始的length个元素, 覆盖在数组arr2的index2开始的位置.例如:int[] arr1 = {1,2,3,4,5};int[] arr2 = {6,7,8...

2020-03-03 13:15:03 167

原创 java的map.getOrDefault()方法

Map.getOrDefault(Object key, V defaultValue);判断map中是否包含key值, 包含返回该key值对应的value值;否则返回defaultValue值.例如:for (int num: nums) { map.put(num, map.getOrDefault(num, 0) + 1); }map中是否包含num,...

2020-02-28 11:54:22 356

原创 git项目的创建与更新

一.git项目的创建首先登陆github账号, 在Repositories下新建一个项目.输入项目名称, 填写关于项目的描述, 选择公有或私有状态, 首次创建时, Initialize复选框最好不要勾选, 完成后点击绿色的创建按钮.完成后会弹出一个地址, 就先不要管了.新建一个文件夹, 右键, 选择git bush here.输入命令 git init将项目的源代码复制到该文件...

2020-02-26 22:59:40 184

空空如也

空空如也

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

TA关注的人

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