
Java
xbronze
努力,学习!
展开
-
【笔记】Java 遍历输出jar包里的所有文件和目录
【代码】【笔记】Java 遍历输出jar包里的所有文件和目录。原创 2023-11-29 15:44:57 · 938 阅读 · 0 评论 -
【笔记】NC65系统,创建一个HTTP接口,接收传过来的数组数据
【代码】【笔记】NC65系统,创建一个HTTP接口,接收传过来的数组数据。原创 2023-11-29 15:42:35 · 825 阅读 · 0 评论 -
【笔记】Java通过JDBC方式访问Oracle数据库的代码示例
【代码】【笔记】Java通过JDBC方式访问Oracle数据库的代码示例。原创 2023-11-29 15:38:29 · 569 阅读 · 0 评论 -
【笔记】Arrays.binarySearch()实践,以及需要注意的一些问题点
例如,如果’A’和’中’(Unicode值为65296)进行相减,结果将会是-38321,这显然不是我们期望的结果。也就是说,数组不是遍历每一个元素,与目标值做对比,校验是否相同,而是通过二分查找算法,先找到数组中间的元素,与目标值做比较:如果目标值大于中间值,则继续比较数组后半部分的元素;例如,如果 low 是 -1000000000,而 high 是 1000000000,那么 low + high 的结果将会是 -999999999 + 1000000000,这将导致整数溢出。原创 2023-11-01 14:28:10 · 704 阅读 · 0 评论 -
【笔记】泛型以及如何绕过泛型定义
使用反射注意:如果通过循环遍历输出list的元素,比如或者aabb这是因为遍历的时候,会把集合里的元素拿出来,作为泛型定义的String类型输出,而我们通过反射添加了一个Integer类型的值,因此造成类型转换错误。aabb123。原创 2023-08-28 16:49:37 · 301 阅读 · 0 评论 -
【笔记】经典Integer对象赋值128问题
注释上说:如果不需要新的Integer实例,则通常应该优先使用此方法,而不是构造函数Integer(int),因为通过缓存频繁请求的值,该方法可能会产生更好的空间和时间性能。缓存在第一次使用时初始化。这里的valueOf方法是Integer类的一个静态方法,它的作用就是将传入的参数(通常是基本数据类型)自动转换为对应的包装类对象。IntegerCache.high 是 Java 中 Integer 缓存的一部分,这个缓存用于存储 -128 到 127 之间的整数,以提高这个范围内的整数在多次使用时的性能。原创 2023-08-25 15:02:50 · 494 阅读 · 0 评论 -
【笔记】判断两个Double类型的值是否相同
在Java中,将两个double值转换为String类型,然后使用equals方法进行比较是一个常见的做法,但是这种方法并不是完全可靠,特别是在涉及浮点数的精度时仍然可能会遇到问题。一种常见的方法是使用一个很小的阈值(epsilon)来比较两个浮点数的差异,如果它们的差异小于这个阈值,则认为它们是相等的。这个阈值通常取决于你的应用场景和需要的精度。虽然这种方法可以避免直接比较浮点数时的精度问题,但是需要注意的是,由于字符串表示法可能会引入额外的舍入或转换误差,因此在某些情况下,仍然可能会得到错误的结果。原创 2023-08-24 14:41:06 · 1544 阅读 · 0 评论 -
【笔记】判断两个String字符串是否相同(考虑字符串为null的情况)
判断两个字符串是否相同,可用于判断一个字段在逻辑处理前后,值是否有变化。原创 2023-08-24 11:30:46 · 800 阅读 · 0 评论 -
【已解决】List<String>转Long[]失败,提示:java.lang.ArrayStoreException
如果指定数组的运行时类型不是此列表中每个元素的运行时类型的超类型。明显Long类型不是String类型的超类,所以。直接以toArray的方式转换。可以通过下面的方式实现。原创 2023-06-13 15:49:04 · 1182 阅读 · 0 评论 -
【笔记】读取jar包中指定资源文件的内容
【笔记】读取jar包中指定资源文件的内容。原创 2023-06-12 18:52:28 · 164 阅读 · 0 评论 -
【笔记】Convert Image File to Base64 String or Base64 String to Image File in Java
【代码】Convert Image File to Base64 String or Base64 String to Image File in Java。转载 2023-06-07 18:28:08 · 104 阅读 · 0 评论 -
【笔记】SpringBoot项目下实践设计模式之工厂模式
项目启动,系统会把`ICarService`的实现类都注入到`carServiceMap`,key值为实现类上@Service注解定义的value,如果没有显式的设置value,如示例上所示,那么默认value值为类名(首字母小写)。原创 2023-04-23 16:46:44 · 393 阅读 · 0 评论 -
【笔记】ArrayList集合去重方式总结
我在日常工作中常用Stream方式去重,满足了工作上业务的需求即可,并没有深入了解和尝试其他方式的去重操作,这对于个人的成长是很有局限性的,遂借此机会整理ArrayList的去重方法。原创 2023-04-18 11:49:42 · 1192 阅读 · 0 评论 -
【笔记】总结学习HashMap和HashTable
HashMap 和 Hashtable 都用于以键和值的形式存储数据。两者都使用散列技术来存储唯一密钥。但是HashMap和Hashtable 类之间也是有许多区别。HashMap部分源码:HashTable部分源码:2.HashMap可以通过Collections.synchronizedMap(Map m)实现同步;Hashtable不能实现非同步。3.HashMap允许一个空键和多个空值;HashTable不允许任何空键和空值从HashTable的源码可以看到,如果key或va原创 2023-04-17 19:26:19 · 447 阅读 · 0 评论 -
【笔记】HashMap和ConcurrentHashMap的区别
HashMap是传统集合下的类,ConcurrentHashMap是并发集合下的类。原创 2023-04-07 15:06:02 · 671 阅读 · 0 评论 -
程序猿三部曲之青铜时代
之前在某篇中,看到工资10K、15K、20K的Java程序员应该掌握的技术。大致对应着初、中、高级开发人员,所以我打算针对这三个阶段,写三篇文章,一边学习,一边总结。曾经读过王小波的时代三部曲,分别是《青铜时代》、《白银时代》、《黄金时代》,遂借用来类比程序员的三个阶段。原创 2023-03-31 17:29:18 · 437 阅读 · 0 评论 -
【笔记】关于Maven中<optional>标签的理解
另一个business业务模块引入common公共模块,使business业务模块在可以顺利声明使用common模块中写的公共方法。子pom就不会继承此依赖关系,事实证明,我理解错了。,在查看business模块的依赖关系,发现没有easypoi依赖了。通过Maven Helper插件看看模块的依赖关系,发现。我们现在回到common模块,设置easypoi依赖的。在common模块中引入一个新的jar包,去掉。标签继承父pom,如果父pom中的依赖设置。属性,或者属性值设置为false。原创 2023-03-29 14:47:53 · 870 阅读 · 1 评论 -
【笔记】ArrayList.retainAll()方法解析
在工作中,用java.util.ArrayList.retainAll(Collection)方法判断两个list集合是否有交集(两个list是否有相同的元素)。如果两个集合有相同元素,那么retainAll返回true。但是如果两个集合的元素完全相同,返回的结果却是false,而如果两个list集合的元素都不一样,retainAll却返回true。 这是怎么回事呢?原创 2023-03-10 17:06:06 · 1018 阅读 · 0 评论 -
【笔记】浅析Field injection is not recommended
IDEA运行SpringBoot项目,遇到以下有关 @Autowired 注解的警告:Field injection is not recommended . 这篇文章浅析这个问题,为什么会有这样的提示?为什么字段注入的方式不推荐?more当前的 spring framework (5.0.3) 文档仅定义了两种主要的注入类型基于构造函数的依赖注入:在基于构造函数的依赖注入中,类构造函数被注释@Autowired并包含可变数量的参数以及要注入的对象。原创 2023-02-23 15:17:38 · 729 阅读 · 0 评论 -
【笔记】两个示例说明map和flatMap的区别
返回一个流,由将提供的映射函数应用到每个元素所产生的映射流的内容替换此流中的每个元素的结果组成。每个映射的流在其内容被放入该流后将被关闭。(如果映射流为null,则使用空流。map操作就是把一种操作运算,映射到一个序列的每一个元素上。以每个元素为一个单位,运算的结果也是相互独立的,所以返回的是。flatMap()操作的效果是对流的元素应用一对多的转换,然后将产生的元素平铺成一个新的流。返回一个流,由将给定函数应用于该流的元素的结果组成。原创 2023-02-09 15:42:43 · 397 阅读 · 0 评论 -
【已解决】SpringCloudConfig客户端启动无法读取到配置参数
自己部署了一个Spring Cloud微服务项目,实践Spring Cloud Config分布式配置组件,按照Spring Cloud Config 资料[Config:Spring Cloud分布式配置组件](http://c.biancheng.net/springcloud/config.html) 先后创建了Eureka注册中心服务、 Spring Cloud Config Server服务、 Spring Cloud Config Client客户端,在最后启动 Spring Client Co原创 2023-02-02 09:47:56 · 5547 阅读 · 2 评论 -
【笔记】Arrays.asList()创建的对象,执行add()方法报错:java.lang.UnsupportedOperationException
创建一个List集合,并在后续的操作中使用之前创建的List集合继续。原创 2023-01-12 15:55:40 · 861 阅读 · 0 评论 -
【笔记】sping.profiles.active指定服务启动时读取的配置文件
spring.profiles.active指定服务启动时的配置文件原创 2022-07-04 15:12:44 · 2241 阅读 · 0 评论 -
【笔记】java8处理List集合数据,按照集合中的指定元素进行排序
List<User> userList = new ArrayList<>(); User user = new User();user.setName("zhangsan");user.setAge(14);user.setHeight(160);userList.add(user);User user2 = new User();user2.setName("lisi");user2.setAge(18);user2.setHeight(179);use原创 2022-04-21 16:08:11 · 9533 阅读 · 2 评论 -
【已解决】处理HttpClient请求外部URL获取到的响应数据中文乱码的情况
用JDK(1.5)自带的API写了个工具调用外部URL接口,请求返回的响应数据中有用户的中文名称,但是乱码了不要问我现在了为什么还在用JDK1.5版本,系统太旧了public static String doGet(String url, Map<String, String> params){ BufferedReader in = null; StringBuilder result = new StringBuilder(); try { URL realUrl原创 2021-08-26 14:34:16 · 550 阅读 · 0 评论 -
去掉烦人的“!=null"(判空语句)
来自:优快云作者:lizeyang原文链接:https://blog.youkuaiyun.com/lizeyang/article/details/40040817前言在stackoverflow上偶然发现该网站有一个热度榜单,本文选自其中热度较高的一个问题。通过阅读了该问题的所有答案,并按照自己的理解进行了梳理,希望能用更精简、更适当的方式展现给大家。stackoverflow链接:http:...转载 2020-04-28 11:00:16 · 706 阅读 · 0 评论 -
Java 虚拟机 ( JVM ) 概述
JVM(Java虚拟机)是一个抽象的计算模型。就如同一台真实的机器,它有自己的指令集和执行引擎,可以在运行时操控内存区域。目的是为构建在其上运行的应用程序提供一个运行环境。JVM可以解读指令代码并与底层进行交互:包括操作系统平台和执行指令并管理资源的硬件体系结构。本文主要对JVM进行概述,并介绍Java程序是如何在上面执行的。虚拟机从本质上讲,虚拟机是个被构建来提供特定或通用目的服务环境的非实...转载 2020-04-27 12:59:55 · 286 阅读 · 0 评论 -
Java判断并避免一个int类型的值内存溢出
Java中有两个常量代表int的最大值和最小值:Integer.MAX_VALUE 和 Integer.MIN_VALUE如果要判断一个int类型的值是否会内存溢出,可进行如下判断//x是int正数if( x > Integer.MAX_VALUE){ ...}//y是int负数if(y < Integer.MIX_VALUE){ ...}对于公式 resul...原创 2020-02-25 22:55:39 · 1269 阅读 · 0 评论 -
为什么java要出现接口和抽象类,二者区别是什么
如果有java编程经验的同学可能会发现,接口倒是经常写,但是抽象类好像并不怎么熟悉,这两者的具体作用到底是什么呢?有什么区别呢?先说对这两个概念的理解我们先说抽象类,其实抽象类的设计理念是“is-a”关系,就是说它更关心的是被抽象的这些个对象是什么,比如说藏獒,贵宾,哈士奇,我们要给他们写抽象类,那抽象出来这个类就是狗狗类,无论什么品种的狗,都是狗狗。再说说接口,接口的设计理念是“has-a...转载 2020-01-08 23:09:40 · 485 阅读 · 0 评论 -
既然Java反射可以访问和修改私有成员变量,那封装成private还有意义么?
作者:大宽宽链接:https://www.zhihu.com/question/28161668/answer/518225224来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。简单来说,private并不是解决“安全”问题的。安全是指不让代码被非法看到/访问。但是只要人能拿到代码,总会有办法去查看和改变代码。其他答案提到反射可以用SecurityManage...转载 2020-01-02 10:02:36 · 346 阅读 · 0 评论 -
【笔记】关于退出嵌套for循环的正确姿势
有这么一段代码String[] abc = {"a", "b", "c"};String[] num = {"1", "2", "3"};for(int i = 0 ; i < abc.length ; i++) { for(int j = 0 ; j < num.length ; j++) { System.out.println(abc[i] + num[j]); ...原创 2019-11-01 11:11:32 · 3200 阅读 · 0 评论 -
java swing 常用的三种布局方式:边界布局、流布局、网格布局管理器
作者:firstmiki链接:http://www.cnblogs.com/firstmiki/p/6340001.html 来源:firstmiki的博客著作权归作者所有,转载请联系作者获得授权。这篇博文仅仅简单介绍了三种常见的布局管理器,都是一些简单应用;一、 边界布局管理器(FlowLayout)/* * 功能:演示边界布局管理器:组件的位置和大小 */package GU...转载 2018-09-18 18:46:42 · 36258 阅读 · 4 评论 -
通过普通类写一个简单的Web Service并发布
首先创建一个简单的java项目 然后创建三个文件如上图所示(个人习惯把各个方法写在对应的类中,如果你习惯都写在同一个类中,那么也是可以的)这三个文件分别是IWebService.java 注意:一定要写 @WebService 注解package cn.xuzihui.itf;import javax.jws.WebService;@WebServicepub...原创 2018-08-16 16:13:10 · 3609 阅读 · 2 评论 -
详解 equals() 方法和 hashCode() 方法
内容来源:编程迷思 http://www.cnblogs.com/kismetv/p/7191736.html 前言Java的基类Object提供了一些方法,其中equals()方法用于判断两个对象是否相等,hashCode()方法用于计算对象的哈希码。equals()和hashCode()都不是final方法,都可以被重写(overwrite)。本文介绍了2种方法在使用和重写时,一些...转载 2018-07-22 17:38:21 · 178 阅读 · 0 评论 -
JAVA抽象类与接口的详细解读与示例
文章转自 https://www.cnblogs.com/maxm/p/6151948.html接口存在的原因:JAVA是单继承的,不支持多继承,但是有了接口,JAVA可以实现多个接口;一个类要是实现某一个接口就必须实现接口内声明的所有方法(强迫执行,即便是空方法,也要实现);接口特点:接口内所有方法只有声明,没有方法体(隐式声明),例如:public abstract vo...转载 2018-03-14 12:52:44 · 217 阅读 · 0 评论 -
Java算法之水仙花数
打印出所有的 “水仙花数 “,所谓 “水仙花数 “是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 “水仙花数 “,因为153=1*1*1+5*5*5+3*3*3。package cn.xuzihui;public class iSshuixianhua { public static void main(String args[]) { iSs...原创 2018-02-22 17:14:10 · 418 阅读 · 0 评论 -
Java算法之求两个数的最大公约数与最小公倍数
输入两个正整数m和n,求其最大公约数和最小公倍数。package cn.xuzihui;public class Test { /** * @author xuzh * 欧几里得算术(辗转相除法) * 求两个数的最大公约数,每次用较大的数除较小数求余 * 余数不为0,则让较大数等于较小数,较小书等于余数,继续相除求余 * 当余数为0...原创 2018-02-22 17:40:00 · 2181 阅读 · 0 评论 -
Java数据结构之堆,栈,常量池
文章转自http://www.iteye.com/topic/6345301.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制. 2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。) 3. 堆:存放所有new出来的对象。 4. 静态域:存放静态成员(static定义的)转载 2018-01-16 14:14:45 · 257 阅读 · 0 评论 -
Java多线程
创建一个线程有三种方法: 1. 通过实现Runnable接口; 2. 通过继承Thread类本身; 3. 通过Callable和Future创建线程。通过实现Runnable接口创建线程我们先来通过实现Runnable接口来创建一个线程package cn.xuzihui.util;public class ThreadWithRunnableInterface {转载 2018-01-22 16:19:07 · 187 阅读 · 0 评论 -
JUnit4基础入门
基础入门首先看一下项目目录 创建需要被测试的类,在类中定义加减乘除四个方法package cn.xuzihui.util;public class Calculate { public int add(int a, int b) { return a + b; } public int subtract(int a, int b)原创 2018-01-21 17:04:04 · 306 阅读 · 0 评论