自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 MySQL--索引失效

索引失效就是在查询已经创建了索引的字段中却没有走索引,走的是全表扫描。其实看有没有走索引只需要加上 explain,查看 type 为 ALL 就行了。下面的图就是索引失效。下面介绍一下有哪些会导致索引失效?like %xx 或者 like %xx%对索引列使用函数对索引列进行表达式计算发生隐式类型转换不遵守最左匹配原则or。

2024-08-08 17:20:35 696

原创 线程池详解

个人认为,应该不同的业务对应不同的线程池,可以有业务隔离的作用,并且防止一个线程池中线程阻塞或者占满时导致的其他业务的执行,其次,业务之间的特征是不一样的,有些主要消耗 CPU,有些主要依靠 IO,有些任务时间 长....等等;

2024-08-06 13:10:50 467

原创 EasyExcel使用方法大全 -- 未完结

业务场景:假设在数据库中性别存的是枚举值,但要求输出到 excel 中为男或女....@HeadStyle:设置标题样式dataFormat 日期格式hidden 设置单元格使用此样式隐藏locked 设置单元格使用此样式锁定quotePrefix 在单元格前面增加`符号,数字或公式将以字符串形式展示horizontalAlignment 设置是否水平居中wrapped 设置文本是否应换行。将此标志设置为true通过在多行上显示使单元格中的所有内容可见。

2024-08-03 20:59:19 1350

原创 CopyOnWriteArrayList如何保证线程安全?

首先获取集合中的所有元素,并且拿到集合中的长度,通过将老长度进行+1的方式复制给新数组,并且将需要添加的元素放置在最后,最后将新数组的地址代替掉老数组的地址。在我们执行替换地址操作的之前,读是读的老数组中的地址,里面是有效数据。替换地址操作之后,读的是新数组的数组,里面也是有效数组。这种方式会比读写都加锁的方式好很多。

2024-08-03 20:11:17 205

原创 ArrayList 在多线程下可能产生的问题

在 add 方法中的 size 变量,是用 private int 进行修饰,每个线程拿到的 size 都有可能不是实时最新的,如果需要进行最新的 size,个人感觉可以加上 volidate 关键字,但这还是不能解决 size++时的原子问题,还需要加上 synchronized 关键字进行 size++时的限制。通俗点讲,就是 size++不是原子操作,在数组进行扩容时,可能会发生线程不安全问题。

2024-08-03 19:36:04 300

原创 JAVA-访问控制权限

2022-10-29 12:32:48 432 1

原创 C语言:每日一题:NO.8

题目:编写函数fun,在主函数中一维数组a已给定任意四个整数,并按如下的规律输出。例如:输入1,2,3,4,程序运行后输出以下方阵4 1 2 33 4 1 22 3 4 11 2 3 4#include<stdio.h>#define m 4void fun(int a[]){ int i, j, k,ii; for (i = m; i > 0; i--) { k = a[m - 1]; for (j = m - 1; j > 0; j.

2022-04-04 18:08:33 902

原创 C语言:每日一题:NO.7

题目:定义一个含有 30 个整形元素的数组,按顺序分别赋予从 2 开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个 数组中并输出。#include<stdio.h>int main(){ int a[30], i, k; float b[6], sum = 0; for (i = 0, k = 2; i < 30; i++, k += 2) a[i] = k; for (i = 0, k = 0; i < 30;sum=0, i++) { sum

2022-04-03 15:29:28 803

原创 C语言:每日一题:NO.6

题目:逆序输出字符串#include<stdio.h>#include<string.h>void fun(char* q){ if (*q) { fun(q + 1); putchar(*q); }}void fun2(char* a){ int len = strlen(a);//计算字符串长度 /*int mystrlen(char* a) 如果要求不能用库函数 { if(!

2022-04-02 17:03:36 881

原创 C语言:每日一题:NO.5

题目:从键盘输入若干整数(数据个数应少于50),其值在0~4的范围内,用-1作为输入结束的标志,统计统一整数的个数。#include<stdio.h>#define m 50int main(){ int a[m] = { 0 }, b[5] = { 0 }, i = 0,x; while (scanf("%d", &x)) { if (x == -1) break; else if (x >= 0 && x < 5) {

2022-04-01 13:03:34 1360

原创 C语言:每日一题:NO.4

题目:编写函数fun,功能是计算并输出high以内最大的10个素数之和。high的值由主函数传给fun函数。例如,若high的值是100,则函数的值为732;#include<stdio.h>int fun(int high){ int sum = 0, n = 0, j, flag; while ((high >= 2) && (n < 10)) { flag = 1; for (j = 2; j <= high/2; j++)

2022-03-31 19:36:24 1851

原创 C语言:每日一题:NO.3

题目:打印如下图形#include<stdio.h>int main(){ int n; scanf("%d", &n); int i, j; for (i = 1; i <=n; i++) { for (j = 1; j <= n-i; j++) putchar(32); for (j = 0; j < i; j++) putchar(65 + j); for (j = i - 2; j .

2022-03-30 10:23:15 517

原创 C语言:每日一题:NO.2

题目:正反序输出链表提供了一个小思路,用于输出链表。#include<stdio.h>struct NODE { int num; struct NODE* next;};typedef struct NODE node;void print(node* h){ if (h->next == NULL) { printf("%d ", h->num); return; } else { print(h->next); prin

2022-03-29 12:06:14 708

原创 C语言:每日一题:NO.1

题目:编写函数fun,功能是:找出形参s所指的字符串中出现频率最高的字母(不区分大小写),并统计其出现的次数。例:形参s所指的字符串为:abcAbsmaxless程序执行后的输出结果为:letter'a':3 times letter's': 3 times#include<stdlib.h> #include<stdio.h>#include<ctype.h&gt...

2022-03-29 11:36:12 730

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除