java
java练习
风_间
不积跬步无以至千里
展开
-
doris udf -- 避免使用递归CTE
在部门表里有 部门id (dept_id) 和 父部门id (parent_id) ,父部门id同时也是部门id。现在要查部门id下所有的子部门id,但是不知道部门层级,部门关系可能也会调整。原创 2024-11-14 16:06:02 · 787 阅读 · 0 评论 -
比properties更好用的读配置文件的方式
用properties.load()时总是要求改level为6,很不舒服学习了用别的方式读配置文件案例如下:一、需要的依赖有: <!--log4j日志核心包--> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.16原创 2022-04-20 15:25:37 · 623 阅读 · 0 评论 -
springboot快速写API,直接传sql作为参数
很久没写过接口了,很多都忘记了,找了找资料都是比较常见的方式,没有直接用sql做参数的。因为业务用数据可能会改,所以写成直接传sql的方式,后期省去了改的活,一劳永逸一、新建工程以上内容也可以手动在pom里添加二、配置用到的pom如下 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s原创 2022-03-15 11:02:17 · 2350 阅读 · 0 评论 -
记录ThreadPoolExecutor主线程等待子线程问题
在使用ThreadPoolExecutor启动线程池遇到一个问题:无法让主线程等待子线程完成后再继续执行。网上找了很多方法如:while循环进行轮询Thread类的join方法synchronized锁CountDownLatchFutureBlockingQueueCyclicBarrierLockSupport最后发现都不是适用于ThreadPoolExecutor。研究了很久才解决。案例如下package com.siger;import com.google.commo原创 2022-02-16 17:27:45 · 3085 阅读 · 1 评论 -
阿里巴巴提示:手动创建线程效果更好
原来创建方式ExecutorService executorService = Executors.newFixedThreadPool(threadNum);阿里的插件提示:手动创建线程效果好我看了一下解释:说是容易造成OOM,巧了,我之前就是出现这个问题。于是我使用了阿里推荐的方式穿件线程 ThreadFactory threadFactory = new ThreadFactoryBuilder().setNameFormat("thread-call-runner-%d").build(原创 2022-02-15 17:49:06 · 1740 阅读 · 0 评论 -
JAVA集合练习——集合的嵌套
问题一创建一个ArrayList集合, 存储E个元素,每个元素都是HashMap, 每一个HashMap的键和值都是String, 并遍历。//这里建了一个Student类,有姓名和年龄属性,由于较为简单,因此未放代码,下一题也是如此。 ArrayList<HashMap<Student,String>> list = new ArrayList<>(); //为了操作简单,只在list里写了两个HashMap,每个HashMap里也只写了三个。原创 2021-04-27 20:58:05 · 843 阅读 · 0 评论 -
Java集合练习——用集合模拟斗地主发牌
斗地主需要实现洗牌,发牌,三个玩家看牌需求分析1、需要有一个牌堆,用于存放所有的牌2、三个玩家各有一个集合,用于放自己的牌3、把牌打散后,分别给三个玩家4、三个玩家分别遍历自己的牌(为了便于检查,可以遍历牌堆还剩什么牌)开始敲代码: //存放牌堆 ArrayList<String> list = new ArrayList<>(); //扑克牌除了大小王之外,四种花色 分别从2-A,用两个数组模拟 String[] color原创 2021-04-24 19:04:49 · 1091 阅读 · 0 评论 -
使用二分查找猜数字
系统生成一个随机数,利用二分法进行查找,并记录次数。代码及分析如下: //生成随机数 Random rand = new Random(); int ans= rand.nextInt(100); int begin=0,end=100,mid,count=0; while (true){ //中间值用于表示猜的数 mid=(begin+end)/2; //记录猜测的次数原创 2021-04-18 19:30:23 · 970 阅读 · 0 评论 -
根据年、月,生成该月日历 以及根据年份生成年历
求指定日期是星期几,首先已知1900年一月一日 星期一,求上个月最后一天是星期几。即计算指定提起距离1900年1月1日 余7得出是星期几//可以先用固定的日期,以2021年4月为例,也可以增加从控制台输入int year =2021,month = 4,total = 0,weekday; //先计算整数年的天数 for (int i=1900;i<year;i++){ //闰年和平年的天数不同 total+= i%4==原创 2021-03-30 22:51:36 · 1270 阅读 · 0 评论 -
随机数生成六个不重复的两位数的数组
生成六个不重复的两位数的数组解析:1、长度为6的数组。2、六个数需要不重复,即每个都不同=> 每一次生成的数都要和之前的数字对比,如果重复则重新生成,如果不重复则保留到数组中。 Random rand = new Random(); //数组的长度是确定的 int[] arr = new int[6]; for (int i = 0,j,temp; i <arr.length ; ) { //先随机生成一个数,如果这个数符合原创 2021-03-30 17:18:50 · 1733 阅读 · 0 评论 -
用Java写水仙花数--一/两次循环
//水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身//输出所有的水仙花数public class shuixianhuashu{ public static void main(String[] args){ int count = 0;//计数器 for(int i = 100;i <1000;i++){ //分别提出这个三位数的每一个数字 int a = i / 100;//百位数字 int b = (i-100*a)/10;//十位数字原创 2020-12-03 15:12:45 · 893 阅读 · 0 评论
分享