- 博客(6)
- 收藏
- 关注
原创 单例模式的基本实现
一:饿汉模式:二:懒汉模式:1.饿汉模式即使在多线程情况下也是安全的。但饿汉模式在不管有没有外部调用时都先把对象创建出来,有时候会造成资源的浪费2.懒汉模式在需要的时候再创建对象或将已经创建好的对象返回出去,不保证线程安全性3.两种模式都需要私有化构造方法,并对外提供获得实例化对象的方法,不同点就在于一个是先创建好了,另一个是需要时再创建三:懒汉模式在多线程环境下的实现:1.双重检测锁:之所以加锁后还要用volatile修饰的原因在于synchronized只能保证线程间的有序性,但不能
2022-03-04 22:23:46 104
原创 二分查找算法不同写法的实现细节的不同之处
今天写了一道关于二分查找排序数组的算法题,有了两点感悟,记录一下。一:在进行dfs递归前可以先简单判断下,满足target>=nums[0]&&target<=nums[nums.length-1]时才进行下面的操作,否则可以直接返回false,没必要再进行下去了。二:在写dfs方法时,有两个实现的小细节需要注意下如图一取dfs(nums,left,mid-1,target)时分两种情况就可1.left>right 2.left<=right如图二取dfs(
2022-01-25 23:08:47 79
转载 String类型和其他类型间的数据转换
1. String类和基本数据类型、包装类之间的转换 Java String和基本数据类型之间的转换(包装类) parse是解析的意思,所以Integer.parseInt(str)就是把str解析成int类型。同理:Double.parseDouble(str)等2. String类和字符数组char[]之间的转换String转化成char[]:str.toCharArray(); 返回一个char[]。String s1 = “123456”;char[] c = s1.toCharA
2021-03-14 10:17:54 1330
转载 java基本数据类型间转换的原理
最近在看JDK的源码,在看源码的时候看到了0xff这么个东东,从这里引出了类型转换。因此在此记录下。在写原理之前先看几个例子。byte b=-1;int a=b;然后打印a得出的结果是-1.int b=-1;byte a=(byte)b;打印a得出来的是-1。int a=255;byte b=(byte)255;打印b得出的结果也是-1;而把这个强制转出来的-1再转回int,得出的确不是255了,有点奇怪了。这是为什么那?好了,废话不过说,下面就开始讨论为什么了。在讲这个之前先来几个概念。二进制中的原码,
2021-03-14 09:51:42 363
原创 Java中的基本数据类型转换(自动、强制、提升)
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2021-03-14 09:45:53 131
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人