Java
Java相关问题!
大雷!
士不可不弘毅任重而道远!
展开
-
Java实现全量保存方案
Java实现全量保存方案原创 2022-08-25 09:26:41 · 1006 阅读 · 0 评论 -
Java_split分隔纪要
Java_split空格分隔纪要原创 2021-12-23 10:10:28 · 329 阅读 · 0 评论 -
关于Java向上取整和向下取整(天花板函数)的说明
背景 项目应用后期纪要!问题 1. 小数参数如何向上取整? 2. 小数参数如何向下取整?说明 向上或向下取整的问题只针对小数类型的数据,在Java中主要用来处理double类型或float类型的数据。纪要函数是Math类下的基础函数,操作较为简单,比较容易上手。下面是随笔的Demo,以供参考:package com.company.num;/** * 天花板函数 * 用例主要说明两个函数 *...原创 2021-10-29 15:01:06 · 7690 阅读 · 0 评论 -
关于JFreeChart中BarChart柱体宽度设置的问题纪要
背景 项目应用后期,特此纪要!问题JFreeChart中Bar Chart图表的柱体宽度如何设置?说明 在JFreeChart的应用中,使用Bar Chart时出现了柱体太宽的情况,默认情况下的尺寸不是很美观,特此纪要!纪要处理前 下面是处理前的样图示例,如下图:从上面的图例中可以看到,柱体的宽度太宽,并不美观。预期后期处理后能让组合柱体变得细一点而又不失其美观。期间曾通过操作BarR...原创 2021-10-26 16:05:51 · 3375 阅读 · 1 评论 -
关于Java中keyset转换指定类型数组的说明纪要
背景 应用后期特此纪要!问题 Java集合转既定类型数组时类型转换问题应如何解决?说明 toArray有一个构造器可以直接一步处理。纪要下面是我们默认转换时出现的异常,此时其实得到的是一个有具体引用指向但是没有具体类型的Object类型,就会导致我们转换失败。如下图:toArray有一个构造器可以直接一步处理,下面是对应的Demo用例:package com.company.list;impo...原创 2021-10-22 11:19:29 · 1962 阅读 · 0 评论 -
关于Swing中的几种布局方式之GridBagLayout操作说明
背景 Swing对于布局方式提供了大致5中的处理方案(BorderLayout边界布局,FlowLayout流式布局,GridLayout网格布局,BoxLaYout盒子布局,最后一种null的类似于流式布局的一种默认布局方式),今天对其中的GridBagLayout网格布局进行简单的用例说明,特此纪要!问题 如何玩转Swing中的GridBagLayout网格布局?说明 对于GridBagLayout网格布局的理解,我个人是有一定的前...原创 2021-10-19 17:15:24 · 6000 阅读 · 0 评论 -
关于Calendar获取指定年份的第一天和最后一天处理方案
背景 项目应用后期特此纪要!问题Calendar如何获取指定年份的第一天和最后一天?说明 解决这个问题核心就是通过获取/设值Calendar.YEAR来处理。Calendar可以根据指定的日期生成对应的时间数据。纪要 下面是一则用来获取上一年的第一天和最后一天的应用Demo,代码如下:package com.company.date;import java.util.Calendar;/** ...原创 2021-10-18 13:36:47 · 1917 阅读 · 0 评论 -
关于Calendar获取指定月份的第一天和最后一天的处理方案
背景 项目应用后期特此纪要!问题Calendar如何获取指定月份的第一天和最后一天的日期?说明 主要利用DAY_OF_MONTH的-1位来获取。纪要下面是一则随笔的Demo用例,以供参考:package com.company.date;import java.util.Calendar;import java.util.Date;/** * 关于Calendar获取指定月份的第一天和最后一天的处理方案。...原创 2021-10-18 11:06:13 · 3457 阅读 · 0 评论 -
Java中+ 和 += 的有什么区别?
背景 应用后期特此整理,望能处答疑解惑需。问题Java中+ 和 += 的有什么区别?说明 “+”:用来计算两个数值的和,计算结束后会产生一个新的值。“+=”:同样用来计算两个数值的和,但是计算完后会赋值给+=运算前的参数。纪要下面是一则说明用例,以供参考:package com.company;/** * + 和 += 的区别用例。 * +:用来计算两个数值的和,计算结束后会产生一个...原创 2021-10-14 10:08:02 · 3549 阅读 · 0 评论 -
Java Swing中JFreeChart构建柱状图(非3D)时关于取消柱体的高亮问题的解决纪要?
背景项目应用中后期的用例Demo,特此纪要!问题Java Swing中JFreeChart构建的柱状图(非3D)如何取消柱体的高亮显示?说明此Demo中点题的代码就一行,其余的代码段在其他的Demo片段中都可寻见。样例Demo下面是关于ciDemo的代码片段:package com.company.swing.jfreechart.barChart;import org.jfree.chart.ChartFa...原创 2021-08-28 17:15:35 · 2477 阅读 · 1 评论 -
Java Swing中关于JFreeChart柱状图的基础Demo纪要
背景 项目应用后期抽离的随笔Demo,特此纪要!问题Java Swing中如何利用JFreeChart构建一个基础的柱状图?说明 用例比较强调基础的构建,其他的处理纪要可以参考关于Swing标签的其他纪要。样例Demo下面是对应的用例代码:package com.company.swing.jfreechart.cloud.test.demo3;import java.awt.*;import org.jfr...原创 2021-08-28 17:02:25 · 681 阅读 · 0 评论 -
Java Swing中JFreeChart构建双纵轴(双Y轴)图表的使用纪要
背景项目应用中整理纪要,用于参数说明。后抽部分简码以用例,特此纪要!问题Java Swing中JFreeChart如何构建双纵轴(双Y轴)图表说明JFreeChart是一个工厂类,是Swing中主要图表构建入口。样例Demo下面是应用Demo的样例代码,可以直接运行参考:package com.company.swing.jfreechart.barChart;import org.jfree.chart.C...原创 2021-08-28 16:53:19 · 5214 阅读 · 3 评论 -
Java Swing中JTable的基础Demo纪要
背景项目应用中有不少场景需要各种Swing组件,特此整理!问题Java Swing中JTable组件如何构建?说明JTable这类的显示组件一般都会与JScrollPane组件组合出现,要不然数据项不会有滚动条。样例Demo下面总共有两个Demo,第一个是基础的渲染DemoDemo1下面的Demo是一则没有滚动条的Table样例:package com.company.swing.table.demo1;...原创 2021-08-28 16:27:18 · 395 阅读 · 0 评论 -
Java 如何实现对Map的Key以及Value转换List的操作
背景数据转换过程中特此记录!问题Java如何处理Map的Key或Value转换List的问题?说明两种解决办法:1.利用List的构造函数直接转。2.先转数组然后再转。样例Demo随笔Demo,如下:package com.company.map;import java.util.*;/** * 用例主要说明Java中Map的Key和Value如何转换为list。 */pub...原创 2021-08-28 14:41:02 · 3866 阅读 · 0 评论 -
@GetMapping和@GetMapping(value=““)的区别纪要
问题: @GetMapping指定value和不指定value的区别是什么?背景: 刚开始接触时的理解@GetMapping是不需要有value的,以为没有指定的value就无法访问对应的请求接口.后来经过实战和学习...... 今天有空来立项说明一下.答案: 1. 首先要清楚@GetMapping的标准写法肯定是有对应的value指向的. 2. 对于没有对应value指向的@GetMapping有且只有一个.在这种情况下当你的路径指向这个@GetMapping的上级路径时系统会默认找寻该.原创 2020-09-26 21:44:05 · 25887 阅读 · 4 评论 -
Java如何实现对于字符串数据的反转操作?
背景:问题: Java字符串反转说明:static class ReverseTest { public static void main(String[] args) { String target = "take to you!"; String targetNow = reverse(target); System.out.println("反转前" + target); System.out.println("反转后.原创 2021-08-08 17:58:56 · 187 阅读 · 0 评论 -
集合排序-实现既定顺序排序
背景项目中统计类目的列表数据要按照指定的规则进行排序.统计的数据集是按照行业内指定的区域进行数据分组计算,因此相当于就是按照给定集合的指定属性字段进行指定顺序的排序.特此纪要!问题如何为集合进行指定顺序的排序?说明由于集合分组的依据的数据量是有限的,要按照给定的顺序进行排序,最快的速度就是按照你想要的顺序重新组装一次集合得到你想要的结果. 这里使用FIFO的队列进行解决这个问题.解决为了更快的了解这种方...原创 2021-07-16 09:43:55 · 451 阅读 · 0 评论 -
设计模式 之<<观察者模式>>
背景无特殊背景, 隶属应用纪要整理!问题观察者模式原理是什么?观察者模式能够解决什么场景的问题?使用观察者模式有什么好处?说明Java中已经有了对观察者模式的实现. 观察者模式的调用尽量使用异步方式触发, 且注意异常处理.内容观察者模式原理是什么?观察者模式通过在应用中建立一组触发链,即A对象的变化会影响B对象,B对象的变化会影响C对象......以此实现一...原创 2021-07-13 18:25:54 · 288 阅读 · 0 评论 -
springboot项目@RequestBody post请求时封装入参为null处理纪要
changechangeover原创 2021-07-08 14:09:06 · 1654 阅读 · 0 评论 -
Java BASE64编码解码纪要
package cn.api.code;import org.apache.commons.codec.binary.Base64;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;/** * BASE64编码解码API */public class CodeEncodeApi { public static void main(String[] args) throws Exception { .原创 2021-07-08 14:49:06 · 1210 阅读 · 0 评论 -
Lambda数据集常用操作使用纪要
List<BrandVO> collect = economicNameAndCode .stream() .sorted((e1, e2) -> e2.getCount().compareTo(e1.getCount())) .collect(Collectors.toList());原创 2021-06-21 14:50:47 · 503 阅读 · 0 评论 -
序列化,transient关键字使用纪要
背景: 项目碰巧遇到了transient关键字, 抽空整理一下.特此纪要!问题: 1. transient是什么? 2. transient关键字能做什么? 3. transient底层实现原理是什么?解答: 1. transient是什么? transient是java中的一个关键字. 2. transient关键字能做什么? transient关键字用来修饰不需要序列化的对象属性,当对象的某个属性被transient关键字修饰后,序列化这个对象的时候,这个属性就不会被序列.原创 2021-06-16 14:12:14 · 274 阅读 · 0 评论 -
java集合数据分页处理纪要
/** * 自定义List分页工具 */public class PageUtil { /** * 开始分页 * @param list * @param pageNum 页码 * @param pageSize 每页多少条数据 * @return */ public static List toPage(List list, Integer pageNum, Integer pageSize) { if (list == null) { ..原创 2021-04-28 10:18:25 · 167 阅读 · 0 评论 -
java1.8以后 关于集合stream.mapToDouble.sum计算精度缺失纪要
/** * 背景:在金额数据计算的时候会存在精度问题,以下是在涉及金额计算过程中Double相关的精度问题纪要。 * 由于此数值的实际使用精度在项目中只有两位,为了保留准确的精度多保留了其余的精度。因此仅供参考。 * 如果是其他的场景,需要根据情况自行调整具体的精度配置。 * * 问题:java1.8以后 关于集合stream.mapToDouble.sum计算精度缺失该如何解决? * 说明: * 如下两个Demo中:testK的正常计算结果应该是2.408631,但是通过sum计算完成后出.原创 2021-03-27 16:50:02 · 9547 阅读 · 0 评论 -
Java如何获取指定小数位的进位数据使用纪要
背景:以往项目中没有涉及到金额数字计算,特此纪要!问题:Java如何获取指定小数位的进位数据?为了方便,简单的写了一个测试类,仅供参考。后续有新的应用再做赘述!package cn.***;import java.math.RoundingMode;import java.text.DecimalFormat;/** * 小数位获取 */public class DecimalAcquisition { public static void main(String[] .原创 2021-03-03 14:27:10 · 1259 阅读 · 1 评论 -
@JsonFormat与@DateTimeFormat的区别纪要
问题:前后端日期数据格式化如何处理?背景:前后端日期传递时要直接得到对应格式的日期数据,为了减少后续手动的转换,因此使用此注解。特此纪要!解决办法:@JsonFormat:用户后端日期数据格式化后传给前端。@DateTimeFormat:用于格式化前端传递日期数据后传递给后端。使用说明: @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:.原创 2021-01-20 19:40:40 · 794 阅读 · 0 评论 -
去除字符串首尾字符随笔纪要
背景:项目中需要关联出不同的数据用“,”逗号分隔,为此使用Set装载toString后前后存在"["和"]",为此随笔纪要一番。说明:有很多种方式可以实现,这是很简单的一种。/** * 去除字符串首尾字符。 */String val = "[11,22,33]";val = val.subString(1, val.length()-1);...原创 2020-12-21 19:36:17 · 6431 阅读 · 0 评论 -
List集合转数组操作纪要
背景: 公司项目在数据操作过程中无法直到组装数据的大小,且重中之重的是所使用的容器是Long[] arr数组.在无法动态数组扩容的情况下,只能采用其他的容器来装载数据.因此需要做集合转数组的操作,特此纪要.问题: List集合如何转化为指定类型的数组?解决办法: 为了更直观的了解并掌握该问题,下面附上相应的Demo以供参考:public static void main(String[] args) { List<Integer> list = new ArrayLi.原创 2020-11-13 16:26:42 · 154 阅读 · 0 评论 -
Java如何实现版本提升?
背景: 公司数据代码衍生新版之际对应的小版本要有相应的提升,因此需要一个能够实现版本的接口来完成这个动作,此间便是出处.问题: Java如何实现版本提升?解决办法: 具体的解决方案下面我会贴出相应的代码片段. 以下简单说明一下实现思路: 1. 首先要有对应的参数来源. 2. 对参数进行操作处理. 3. 对应不同的情况分批处理. 4. 出口返回. 5. 正常返回.下面贴出对应的代码:/**.原创 2020-09-28 18:34:24 · 587 阅读 · 0 评论 -
Mybatis QueryWrapper,UpdateWrapper条件构造器的使用纪要
Mybatis UpdateWrapper条件构造器的使用背景: 以前项目没有怎么用过此类构造器,现在项目遇到了正好记录一下.问题: 如何使用Mybatis UpdateWrapper构造器进行数据修改?解决办法: 为了更方便直观的理解,下面引入一段项目中的代码以供参考: Eg: // 通过|驳回 // 子方案状态字段.0逻辑删除,1编辑中,2已提交配置(清单生成中),3通过,4驳回. @PutMapping("/setSchemeStatus") p.原创 2020-09-27 19:21:18 · 10304 阅读 · 0 评论 -
获取两个字符串数组交集纪要
/** * .获取两个字符串数组交集. * @param strArrA * @param strArrB * @return * @author alm02. */public static String[] GetIntersection(String [] strArrA, String [] strArrB) { Map<String,Boolean> map = new HashMap<String,Boolean>(); List<.原创 2020-09-10 16:28:46 · 380 阅读 · 0 评论 -
Java_String将字符串转换为字符串数组
/** * Java_String将字符串转换为字符串数组. * 用默认的分隔符(,)将字符串转换为字符串数组 * @param str 字符串 * @return */public static String[] str2StrArray(String str){ return str2StrArray(str,",\\s*");}原创 2020-09-07 05:12:21 · 2697 阅读 · 0 评论 -
关于Java中对目标字符串的指定字符的说明
Java字符串替换?背景: H5界面UI修改,其中有参数从其他平台传递,因无法修改,故而直接在传递过来的值中进行处理,然后渲染.问题: 如何在既定的字符串数据中匹配替换指定的字符串?解决办法: 大致处理步骤如下: 1. 首先判断要处理的字符串是否在既定的字符串数据中出现? 可以用String.contains(String str)实现; 2. 然后Codding要如何实现替换的逻辑. 该场景中使用String.replaceAll(String thisStr, .原创 2020-08-12 17:36:01 · 3891 阅读 · 0 评论 -
String.valueOf()和String.toString()孰优孰劣?
String.valueOf()和String.toString()孰优孰劣?背景: 代码评审.说明: String.valueOf()会对null值预判,最终返回"null"; String.toString()使用需要确定被toString()的参数不为null.(也就是说String.toString()使用要预判null值)code: /** * Returns the string representation of the {@code Object} .原创 2020-08-11 13:42:15 · 158 阅读 · 0 评论 -
Java_Supplier接口的使用纪要
package cn.go.supplier;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.function.Supplier;/** * Java_Supplier接口的使用: * * Supplier接口是Java1.8之后的典型函数式接口; * 作用: * 1. 获取泛型参数指定类型的对象数据; * 2. 创建对象; * 说明: 由.原创 2020-07-26 12:39:37 · 813 阅读 · 0 评论 -
Int类型使用纪要
/** * Int类型使用纪要: * * Java虚拟机在对Int类型的数据进行处理的时候,有两条默认的规则: * 1. 当程序中出现“整型常量”的时候,默认会以int类型处理; * 2. 如果算数表达式中出现的所有整形常量(数字)都是int类型,默认的运算结果也是int类型; * * 注意: * 需要注意一点:在程序编辑过程中,编译器只对直接出现的int常量进行超范围检查, * 但是对于在编译中算数运算、表达式产生的int型值则不会进行范围检查; */pu.原创 2020-07-24 16:33:32 · 754 阅读 · 0 评论 -
Java设计模式-单例模式纪要
package cn.signleton;/** * 单例模式: * 单例模式是Java中最简单的设计模式之一; * * 创建型模式: 单例模式属于创建型模式; * 作用: 能够提供创建对象的最佳方式; * * 效能: 这种设计模式涉及一个单独的类,该类负责创建自己的对象,并且保证只创建单个的对象; * 特点: 采用这种设计模式的类能够提供访问其唯一对象的方式,可以直接访问,不需要手动再去 * -实例化该类的对象; * * 设计特点: * 1. 单例类只能有一个实例; * .原创 2020-07-20 01:10:25 · 123 阅读 · 0 评论 -
Java线程类的实现方式-之-Lambda表达式
package cn.Fourth;/** * 今天使用Java的lambda表达式走一个关于Runnable的优化Demo; */public class ThreadTest { /** * Java主函数|入口; * @param args */ public static void main(String[] args) { /** 实现线程的第一种方式: * Thread! *///.原创 2020-07-15 23:15:48 · 824 阅读 · 0 评论 -
Java函数式编程-之-Lambda函数式接口
package cn.t02;/** * 函数式接口: * 函数式接口即适用于函数式编程场景的接口,在Java中函数式编程的体现是Lambda. * 因此函数式接口可以适用于Lambda使用的接口. * 只有在确保接口中有且只有一个抽象方法时,Java中的Lambda才能顺利的推导! * * 语法糖:语法糖是指使用更加方便,但是原理不变的代码语法. * 例如:集合遍历使用的for-Each语法,其底层实现原理是迭代器. * 那for-Each对于迭代循环代码来说就是他的语法糖! *.原创 2020-07-14 22:47:52 · 180 阅读 · 0 评论 -
Java获取数组中最大的值
/** * 今天随笔一个获取数组中最大值的Demo. * * Java主函数|入口; * @param args */ public static void main(String[] args) { // 初始化一个数组对象并赋值; int [] arr = {10,2,66,193,5,6,22,55}; // 初始化一个最大值,假设数组中第一个元素就是最大的值; in...原创 2020-07-13 14:11:52 · 6418 阅读 · 0 评论