当前位置: 首页 > news >正文

临朐网站建设定制结构优化设计

临朐网站建设定制,结构优化设计,茶道网站开发背景,品牌网站建设优化公司参考链接: java中什么是空指针异常以及为什么会产生空指针异常天上的云川的博客-CSDN博客什么是java空指针 java中容易产生空指针异常:NullPointerException的场景火龙映天的博客-CSDN博客java怎么制造空指针异常 java空指针异常是什么、怎么发生、如何…

参考链接:

  • java中什么是空指针异常以及为什么会产生空指针异常天上的云川的博客-CSDN博客什么是java空指针

  • java中容易产生空指针异常:NullPointerException的场景火龙映天的博客-CSDN博客java怎么制造空指针异常

  • java空指针异常是什么、怎么发生、如何处理僵尸道长毛小方的博客-CSDN博客空指针异常是什么

1. 名词解释

指针:指针中存放的是内存地址。

空:null

空指针:指针不指向任何内存地址(没有初始化分配内存,获得引用)

空指针异常:一个指针不指向任何内存地址,但仍被调用了。

打开 NullPointerException源码,开头就写明出现NullPointerException的原因:

  • Invoking a method from a null object:调用空对象的方法

    • obj.method() // obj对象不存在

  • Accessing or modifying a null object’s field:获取或修改空对象的字段

    • obj.setName("cjn") // obj对象不存在

  • Taking the length of null, as if it were an array:获取一个空数组的长度

    • array.length // array为null

  • Accessing or modifying the slots of null object, as if it were an array:获取或者修改空集合的一个位置上的内容

    • arr[100]=100; // array为null

  • Throwing null, as if it were a Throwable value:将null视为Throwable值

  • When you try to synchronize over a null object:当你尝试同步一个空对象

2. 代码测试

测试代码如下:

 package exception;​import cn.hutool.core.collection.CollUtil;import cn.hutool.core.util.StrUtil;import compare.User;​import java.util.Hashtable;import java.util.List;​/*** @ClassName NullPointerExceptionTest* @Description 产生空指针异常的原因:在null对象上调用方法或者获取属性* @Author Jiangnan Cui* @Date 2023/2/13 21:05* @Version 1.0*/public class NullPointerExceptionTest {public static void main(String[] args) {stringNullPointerException();collectionNullPointerException();packageClassNullPointerException();  }​/*** 测试字符串产生的空指针异常*/public static void stringNullPointerException(){System.out.println("测试字符串产生的空指针异常");String str = null;// 1. 字符串内容为null,调用字符串相关方法时会产生空指针异常//        if(!str.isEmpty()){//            System.out.println("str = " + str);//        }// 优化:先判断不为null,满足后再调用其所属方法if(str != null && !str.isEmpty()){System.out.println("str = " + str);}​// 2. 字符串内容为null,进行字符串内容比较时会产生空指针异常//        if(str.equals("test")){//            System.out.println("str = " + str);//        }// 优化:// a. 将不为null的字符串内容放在前方if("test".equals(str)){System.out.println("str = " + str);}// 2. 使用StrUtil.equals()方法比较,此时str放在前后均可以// str放在前面if(StrUtil.equals(str, "test")){System.out.println("str = " + str);}// str放在后面if(StrUtil.equals("test", str)){System.out.println("str = " + str);}}​/*** 测试包装类自动拆箱时产生的空指针异常*/public static void packageClassNullPointerException(){Integer integer = null;//        int number = integer;//        System.out.println("number = " + number);// 优化:先判空,再赋值int number = 0;if(integer != null){number = integer;}System.out.println("number = " + number);}​/*** 测试集合调用时产生的空指针异常*/public static void collectionNullPointerException(){// 1. 集合为空时,调用集合相关方法会产生空指针异常List<String> list = null;//        if(list.isEmpty()){//            System.out.println("我是空!");//        }// 优化:// a. 先判断是否是null,不为null时在判空if(list != null && list.isEmpty()){System.out.println("我是空!");}// 集合不为null时,也可以通过.size()方法判断集合是否为空if(list != null && list.size() > 0){System.out.println("我是空!");}// b. 使用工具类判断集合是否为空if(CollUtil.isEmpty(list)){System.out.println("我是空!");}​// 2. 向集合中添加元素产生空指针异常String key = null;String value = null;Hashtable<String,String> hashtable = new Hashtable<>();//        hashtable.put(key,value);// 优化:if(key != null && value != null){hashtable.put(key, value);}/*** 总结:*     分析:部分集合中不允许设置key或value为null,这类集合主要有:Hashtable、ConcurrentHashMap、ConcurrentSkipListSet、* ConcurrentLinkedDeque、ConcurrentLinkedQueue、LinkedBlockingDeque、LinkedBlockingQueue、ArrayBlockingQueue、* PriorityBlockingQueue等。*/}}

如有错误,欢迎批评指正!

http://www.shuangfujiaoyu.com/news/48126.html

相关文章:

  • 家电电商平台排名台州关键词优化报价
  • 服装网站建设比较好网页优化seo广州
  • 安徽中色十二冶金建设有限公司网站百度搜索引擎平台
  • 石狮网站建设报价关于友谊的连接
  • 网站代运营合同模板百度联盟
  • wordpress主题去除授权公司seo是什么级别
  • 电商网站建设实训步骤页面优化的方法
  • 成都疫情防控最新规定网站优化外包公司
  • 大连哪里做网站360搜索首页网址是多少
  • 网站建设及制作吉林seo刷关键词排名优化
  • 通过网站seo操作郑州网站建设推广优化
  • 做外贸网站注意seo优化推广技巧
  • wordpress 验证密码关键词优化是什么
  • 在百度云上做网站深圳seo优化排名优化
  • 微商分销模式深圳seo技术
  • 低价做网站广州seo公司哪个比较好
  • 商城网站平台怎么做快刷网站
  • 哪个网站做视频挣钱百度seo什么意思
  • 政府内网网站建设企业seo排名
  • 在线平面设计工具seo关键词库
  • 网站制作公司相关工作seo常规优化
  • 联通公司网站谁做的人民政府网站
  • 网站开发主要运用什么技术软文大全800字
  • 苏州新区建网站网络营销策划目的
  • b2b2c平台商城系统优化大师安卓版
  • 网站建设排行社群运营的经典案例
  • 为什么很多网站用php做google关键词查询工具
  • 我做的网站服务器别人没法左键点击下载呢网站推广的10种方法
  • led视频网站建设沈阳网站建设
  • 网页设计培训 机构在线seo优化工具