java编程常用技术(推荐)
作者:jingxian 时间:2023-11-06 09:03:44
一:将String字符串放在最前面
防止发生NullPointerException异常,我们通常把String字符串放在equals方法的左边来比较,这样可以有效的避免
空指针异常的发生。
第一种情况,如果variable为Null,则会发生空指针异常情况;第二种情况即使variable为Null,也不会发生空指针异常,而且不会丢失任何数据。所以建议
大家编程时把直接量放在左边。
二:不要相信早期的JDK API
在早期编程中,JDK API还不是很成熟,例如下面代码块:
File file=new File("..."),file封装了一个目录或者文件,调用list()方法,如果是目录,则返回字符串数组;如果不是,则返回null;
所以我们可以提前添加一些校验,如以下代码所示:
三:不要相信-1
在javadoc中明确规定String.indexOf()如果返回值为-1,则表示该字符在字符串中不存在;或者当我们使用IO流读取文件时,也定义为-1
时读取完毕。如下代码:
目前看来这种方式很凑效,但是如果java改变了编码方式,定义返回-2为更好的方式呢,所以建议使用第二种。
四:避免意外赋值
如下代码:
第一种情况:将==号写成=,就会意外将5赋值为变量;第二种情况:不会发生意外赋值的情况;
第三种情况:===是JavaScript中全等符号,类型相同,值也相等。
五:检查Null和Length
无论如何,只要你有一个集合或者数组,首先要确保它存在,并且不为空。
代码如下:
第二种方式更好,避免了早期版本JDK API 的错误。
六:所有的方法都是final的
避免子类继承父类的所有方法。
标签:java,编程,技术
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Android ListView UI组件使用说明
2022-06-14 16:04:09
![](https://img.aspxhome.com/file/2023/2/137712_0s.png)
springboot中的静态资源加载顺序优先级
2023-08-24 11:12:31
![](https://img.aspxhome.com/file/2023/6/94206_0s.jpg)
Android12四大组件之Activity生命周期变化详解
2022-05-04 15:47:57
JDK源码之Vector与HashSet解析
2021-09-06 10:47:23
![](https://img.aspxhome.com/file/2023/4/64144_0s.png)
spring boot使用thymeleaf跳转页面实例代码
2021-09-14 09:46:16
![](https://img.aspxhome.com/file/2023/1/122261_0s.png)
详解c# AutoMapper 使用方式
2022-05-25 20:51:38
![](https://img.aspxhome.com/file/2023/1/89761_0s.jpg)
springboot无法从静态上下文中引用非静态变量的解决方法
2022-03-05 16:50:05
java数组元素的引用实例讲解
2023-12-02 16:40:32
Java实现FTP文件与文件夹的上传和下载
2023-09-17 09:45:50
SpringMVC中的几个模型对象
2021-09-01 19:25:44
Android编辑框EditText与焦点变更监视器及文本变化监视器实现流程详解
2021-06-21 04:48:14
![](https://img.aspxhome.com/file/2023/6/98676_0s.png)
Android开发实现的计时器功能示例
2023-09-04 07:33:33
![](https://img.aspxhome.com/file/2023/0/98660_0s.gif)
java操作mongodb示例分享
2023-09-07 19:00:02
快速理解Java设计模式中的组合模式
2021-10-18 04:16:29
![](https://img.aspxhome.com/file/2023/3/86733_0s.jpg)
动态配置Spring Boot日志级别的全步骤
2023-01-29 01:57:19
C#集合之队列的用法
2022-11-24 16:15:38
![](https://img.aspxhome.com/file/2023/4/108794_0s.jpg)
分析讲解SpringMVC注解配置如何实现
2023-10-30 17:23:58
Springboot actuator生产就绪功能实现解析
2021-07-23 12:57:06
Android 优雅的实现通用格式化编辑
2023-02-08 05:24:02
![](https://img.aspxhome.com/file/2023/8/130458_0s.gif)
java Disruptor构建高性能内存队列使用详解
2022-02-03 00:41:14
![](https://img.aspxhome.com/file/2023/7/61247_0s.png)