java基础
Mitsuha三葉
别错过日落和夕阳
展开
-
Java 遍历JsonNode
如图,有一个jsonNode对象,我想获得路径"data" -> "items"数组下的每个元素的某个值,比如id,那么我得遍历这个数组Node对象。直接上代码: // 遍历jsonNode,responseMessage为初始jsonNode对象 Iterator<JsonNode> elements = responseMessage.path("data").path("items").elements(); List<String> ids = new Arr原创 2022-04-02 16:33:15 · 2697 阅读 · 0 评论 -
Java中的 CommandLineRunner 与@PostConstruct
一:@PostConstruct不是spring提供的而是Java自己的注解。Java中该注解的说明:@PostConstruct该注解被用来修饰一个非静态的void()方法。被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次。PostConstruct注释用于需要依赖注入完成后才能执行任何初始化的方法上。 在类投入使用之前,必须调用此方法在使用spring框架时,在一个类内,如果有构造器(Constructor ),有@PostConstruc转载 2022-03-31 15:55:39 · 2738 阅读 · 0 评论 -
liquibase:changelog文件建表的两种写法
写法一:使用createTable 标签需要加上判断条件preConditions,字段多时比较繁琐<changeSet author="666" id="tb_visitor_information"> <preConditions onError="MARK_RAN" onFail="MARK_RAN"> <not> <tableExists tableName="tb_visitor_information"原创 2022-01-21 11:20:41 · 1125 阅读 · 0 评论 -
Java 8中使用stream去重List对象集合(单个属性,多个属性)
使用stream去重List对象集合不墨迹,代码如下:单属性:List<Course> arrayList = courseThirds.stream().collect( Collectors.collectingAndThen(Collectors.toCollection( () -> new TreeSet<>(Comparator.comparing( Course::getBjmc))),ArrayList::new));多属性:原创 2022-01-04 15:51:11 · 1700 阅读 · 0 评论 -
Java获取指定时间前一小时、后一小时的时间
代码如下:功能可以根据自己的需要修改成一天前、一个月前等等。 /** * 获取当前时间前一小时的时间 * @param date * @return java.util.Date */ public static Date beforeOneHourToNowDate(Date date) { Calendar calendar = Calendar.getInstance(); /* HOUR_OF_DAY 指示一天中的小时 */ calendar.set原创 2021-09-16 19:33:45 · 13671 阅读 · 0 评论 -
idea设置类注释和方法注释(含模板代码)
1、类注释/** * @author zhuyiming6 * @description * @date ${DATE} ${TIME} * @since */ 2、方法注释1、新建模板组2、编辑如图部分模板:* * 功能描述$params$ * @return $return$ */原创 2021-08-20 10:14:18 · 335 阅读 · 0 评论 -
遍历ArrayList的过程中移除元素的方式
错误方法一使用for循环正序遍历ArrayList,使用remove移除元素结果如下,只删除了一个“3”原因:在匹配到第一个要删除的元素并移除时,后面元素会往前移位,导致索引位置改变,从而漏掉后面一个元素。public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("1"); list.add("2"); list.add("3"原创 2021-03-17 10:41:00 · 2261 阅读 · 3 评论 -
线程池的3大方法,7大参数,执行原理,拒绝策略
1、三大方法:Executors.newSingleThreadExecutor(); 单线程Executors.newFixedThreadPool(5); 固定线程个数Executors.newCachedThreadPool(); 缓存池,可扩展2、七大参数:(自定义创建线程池)public ThreadPoolExecutor(int corePoolSize, //常驻核心线程数 int maximumPoolSize, //最大原创 2021-03-11 11:20:58 · 418 阅读 · 0 评论 -
git 配置多个公钥
我们个人开发项目的时候,一般只需要在本地生成一个ssh key关联到github或者gitee的仓库用来提交代码,但是遇到工作原因,需要使用公司的gitLab,这个时候就需要再添加其他的ssh key到本机。一、设置用户名与邮箱安装Git后首先要做的事情是设置你的用户名称和e-mail地址。每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中:git config --global user.name "用户名" #名称git config --global user.email xxxx原创 2021-03-09 15:23:40 · 1816 阅读 · 0 评论 -
Java中遍历Map集合的3种方式
Java中遍历Map集合有以下3种方式方法一:通过**keySet()**方法遍历map的key,再根据key获得value,最常用的方式。for (String s : map.keySet()) { String value = map.get(s); System.out.println("key为:" + s + ", value为:" + value);}方法二:通过**entrySet()**方法,得到一个Entry集合,集合中每个元素代表一个k-v键值对,集合容量大的原创 2021-03-06 10:35:04 · 2335 阅读 · 3 评论 -
冒泡、快排、选择三种常用排序的实现以及时间复杂度
时间复杂度:排序方法平均时间最好时间最坏时间快速排序(不稳定)O ( n l o g 2 ( n ) )O ( n l o g 2 ( n ) )O(n^2)冒泡排序(稳定)O(n^2)O(n)O(n^2)选择排序(不稳定)O(n^2)O(n^2)O(n^2)Java实现:1、快速排序public class 快速排序 { public static void main(String[] args) { int[] a原创 2020-12-17 09:55:02 · 658 阅读 · 1 评论 -
Java中十六进制与十进制相互转换
一:十进制转十六进制public class 十进制转十六进制 { public static void main(String[] args) { int a = new Scanner(System.in).nextInt(); //把十进制整数转换为十六进制字符串,字母为小写 String hexStr = Integer.toHexString(a); //把十六...原创 2020-03-17 19:58:35 · 2240 阅读 · 3 评论 -
利用Set集合去除List集合中重复元素、字符串中的重复子串
Set集合特点:① 一次只存一个元素,② 不能存储重复的元素③ 存储顺序和取出来的顺序不一定一致不能存储重复的元素可以利用②这一特点,完成去重的功能。一:Set集合去掉List集合中重复元素public static void main(String[] args) { //利用set集合 去除ArrayList集合中的重复元素 ArrayList<...原创 2020-03-08 11:14:36 · 1076 阅读 · 1 评论 -
java使用System.out.format()格式化输出,保留n位小数等操作
JDK5.0允许java像C语言那样直接用printf()方法来格式化输出System.out.format()功能与printf()一样,可以使用%d,%f等参数。使用System.out.format()完成左对齐,补0,千位分隔符,小数点位数,本地化表达public class TestNumber { public static void main(String[] ...原创 2020-03-07 17:44:13 · 2897 阅读 · 0 评论