NPE是什么

在编程中出现的空指针异常

 Map类集合K/V能不能存储null值的情况,如下表格:

 remove元素要使用Iterator方式,如果并发操作,需要对Iterator对象加锁。

 

Arrays.asList()数组转换集合

      这个工具类应该都用过,可以很方便的把数组转换为集合,但是一些细节需要注意:

 

[java]  view plain  copy
 
  1.     public static void main(String[] args) {  
  2.         String[] str = new String[]{"a","b"};   
  3.         List list = Arrays.asList(str);  
  4.         list.add("c");//报错  
  5.           
  6. //        str[0] = "d";  
  7.         for(Object o : list){  
  8.             System.out.println(o);  
  9.         }  
  10.     }  
      
      注意:Arrays.asList()把数组转换成集合时,不能使用其修改集合的相关方法,它的add/remove/clear方法会抛出UnsupportedOperationException异常。asList()的返回对象是一个Arrays内部类,并没有实现集合的修改方法。所以,如果需要修改集合,要在转换之前操作。还需要注意一点,在你转换后,再对数组的值进行修改,集合也会跟着变化。

4、toArray()集合转换数组

      当我们需要把一个集合转换成数组时,往往会调用toArray()方法,如果使用的是无参的方法,会报ClassCastException异常。

      原因:直接使用toArray()无参方法返回值只能是Object[]类,若强转成其它类型数组将会抛出异常。

      解决方案:使用<T> T[] toArray(T[] a);有参数这个方法,代码如下:

 

 

转载于:https://www.cnblogs.com/ghc666/p/8657149.html

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值