我是靠谱客的博主 无情芝麻,最近开发中收集的这篇文章主要介绍Collection接口实现类的addAll()/removeAll()方法出现java.lang.NullPointerException,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

阿里巴巴Java开发手册提示:在使用Collection接口任何实现类的addAll()方法时,都要对输入的集合参数进行NPE判断。

package com.cn.demo;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ListTest {
public static void main(String[] args) {
//初始化一个集合
List<String> list = new ArrayList<String>(Arrays.asList("alpha", "beta", "gamma", "delta"));
//1. addAll()测试
//1.1 初始化多种情形的集合
List<String> addList = null;
List<String> addList1 = new ArrayList<String>();
List<String> addList2 = new ArrayList<String>(Arrays.asList("epsilon", "zeta", "eta"));
List<String> addList3 = new ArrayList<String>(Arrays.asList(null, "epsilon", "zeta", "eta"));
//1.2 测试
list.addAll(addList);//addList为null,报空指针
list.addAll(addList1);//addList1为[],不报错
list.addAll(addList2);//addList2无null,不报错
list.addAll(addList3);//addList3有null,不报错
//2. removeAll()测试
//2.1 初始化多种情形的集合
List<String> removeList = null;
List<String> removeList1 = new ArrayList<String>();
List<String> removeList2 = new ArrayList<String>(Arrays.asList("alpha", "beta"));
List<String> removeList3 = new ArrayList<String>(Arrays.asList(null, "alpha", "beta"));
//2.2 测试
list.removeAll(removeList);//removeList为null,报空指针
list.removeAll(removeList1);//removeList1为[],不报错
list.removeAll(removeList2);//removeList2无null,不报错
list.removeAll(removeList3);//removeList3有null,不报错
System.out.println("addAll/removeAll测试:list="+list);
}
}

最后

以上就是无情芝麻为你收集整理的Collection接口实现类的addAll()/removeAll()方法出现java.lang.NullPointerException的全部内容,希望文章能够帮你解决Collection接口实现类的addAll()/removeAll()方法出现java.lang.NullPointerException所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部