java-常用编码小技巧-旨在提升编码效率

news/2024/11/25 5:50:07/

说在前面,本文旨在记录编码中实用的、易忘记的、易混淆的编码技巧,目的很简单,牢记这些小技巧,提高编码效率。大神请略过~~~把时间用在更有意义的事情上! 

本文记录的小技巧,要么是每每编码的时候记不清楚,需要百度,耽搁时间;那么是生产上出过问题的血泪史...

1、List<String>用逗号拼接元素

List<String> list = Lists.newArrayList();
list.add("a1");
list.add("a2");
String join = String.join(",", list);

2、mybatis查询数据的时候,如果查询不到,是不会返回null,要么返回对象,那么返回集合

3、对象属性拷贝建议用​org.springframework.beans.BeanUtils​,源对象在前,目标对象在后

//org.springframework.beans.BeanUtils
public static void copyProperties(Object source, Object target){....}

4、数组判空

//null,集合元素为0,都是空
CollectionUtils.isEmpty(Lists.newArrayList())

5、字符串判空,isBlank会去除字符串前后空格,isEmpty不会

String aa = " ";
//org.apache.commons.lang3
StringUtils.isBlank(aa);//true
StringUtils.isEmpty(aa);//false

6、stream处理空数组,或者filter后集合为空,也不会报错

List<String> list = Lists.newArrayList();
List<String> collect = list.stream().map(x -> x+"").collect(Collectors.toList());//[]

备注:追求性能略过 

7、list中元素为空也不会报错,但是for中的代码不会执行

List<String> list = Lists.newArrayList();
for (String s : list) {System.out.println("s = " + s);
}

8、filter表达式为false过滤,true保留

List<String> list = Lists.newArrayList();  
List<String> collect = list.stream().filter(x -> StringUtils.isNotBlank(x)).collect(Collectors.toList());

9、表达式为true不抛异常

Assert.isTrue(true, "aaa");
Assert.isNull(null, "aaa");
Assert.isEmpty(null, "aaa");

10、字符串转换

(String)强转,只有字符串和null不会报错,null强转后还是null

  String.valueOf(),一切皆可转,null转为"null"

String a1 = "a1";
String b1 = (String)a1;//不报错
String a2 = null;
String b2 = (String)a2;//不报错,return null
String b2_2 = String.valueOf(a2);//不报错,return "null"
Integer a3 = 3;
String b3 = (String)a3;//飘红,编译不通过
Object a5 = 3;
String b5 = (String)a5;//编译通过,运营报错
String b5_2 =  String.valueOf(a5);//不报错

11、数组中获取第一个元素

//没有元素则返回一个null塞给Optional,使用的时候判断first.isPresent()是否为ture即可
List<String> objects = Lists.newArrayList();
Optional<String> first = objects.stream().findFirst();
if (first.isPresent()) {String s = first.get();
}


http://www.ppmy.cn/news/287887.html

相关文章

简易扩音机设计1——麦克风篇

OK&#xff0c;阿绿巴蒂&#xff0c;好久不见。最近来广州后过上了社畜的生活&#xff0c;896也是常事啦。 项目需求 开门见山。 说说我最近做的一个项目&#xff0c;介个项目用到了一个类似扩音的功能&#xff0c; 俗话说就是大声公 原理很简单&#xff0c;麦克风采集声音变…

成熟的 XMOS 方案 ——「 XMOS 麦克风阵列 」

2021 年底&#xff0c;知名的音频芯片制造厂商 XMOS 正式发布了新一代芯片产品 XVF3610 &#xff0c;这是一款语音接口的主控芯片&#xff0c;能够在复杂的噪声中提升了ASR语音识别率和会议通话质量的解决方案。 将语音接口&#xff08;XVF3610&#xff09;集成到智能 soundbar…

科大讯飞麦克风阵列(6麦)上手体验

前言&#xff1a; 因项目需求&#xff0c;买来一个体验一下&#xff0c;效果还不错&#xff0c;就是价格贵了一点2699元&#xff0c;隔壁百度家的只要1299&#xff0c;样式比他好看。效果暂不清楚&#xff0c;下次买一个试试。 正文 一 、开箱&#xff1a;先上图包装清单&am…

win10麦克风说话没声音_怎样选主播麦克风

主播&#xff0c;方兴未艾。我本人65岁了&#xff0c;也是一个主播&#xff0c;在千聊、喜马拉雅、抖音都有直播。 先不说主播的水平怎么样&#xff0c;我觉得要做好一个主播&#xff0c;必须的要有一个好的麦克风。 不懂技术没关系啊&#xff0c;我告诉你在不懂技术的情况下怎…

2022-2028全球与中国电容麦克风市场现状及未来发展趋势

【报告篇幅】&#xff1a;101 【报告图表数】&#xff1a;148 【报告出版时间】&#xff1a;2021年12月 报告摘要 2021年全球电容麦克风市场销售额达到了11亿美元&#xff0c;预计2028年将达到13亿美元&#xff0c;年复合增长率&#xff08;CAGR&#xff09;为2.4%&#xff0…

关于麦克风,你应该知道的事

关于麦克风&#xff0c;你应该知道的事 1. 介绍 麦克风在生活中很常见&#xff0c;可以说是无处不在&#xff0c;耳机、手机、智能音箱、电脑上都有麦克风&#xff0c;平时听得音乐也都需要由专业麦克风进行录制。即使这样&#xff0c;大多数人对于麦克风的也并没有足够的了解…

树莓派安装 VScode 与卸载 VScode

0. 实验准备 一个带有系统的树莓派&#xff08;有屏幕更好&#xff09; 一台联网的电脑&#xff0c;且可以使用 VNC 登录树莓派&#xff08;与屏幕二选一&#xff09; 一个可以与树莓派交互文件的软件、如&#xff1a;MobaXterm&#xff08;推荐&#xff09;、WinSCP 1. 获取…

手机麦克风结构原理图_详解麦克风阵列的基本原理、结构组成及声学效果

原标题&#xff1a;详解麦克风阵列的基本原理、结构组成及声学效果 阵列(Array)&#xff1a;数学定义——有限个相同资料形态之元素组成之集合 麦克风阵列具有对远场干扰噪声很强的抑制作用&#xff0c;应用于便携IT设备如PDA、GPS、NB、手机等在较大噪声环境中使用时表现出较好…