ArrayList和Arrays.asList()的Junit断言错误
创始人
2024-09-14 08:30:41
0

在使用JUnit进行断言时,可能会遇到使用ArrayList和Arrays.asList()时出现的错误。这是因为Arrays.asList()返回的是一个固定大小的List,不支持添加或删除元素的操作。下面是一个包含代码示例的解决方法:

import org.junit.Assert;
import org.junit.Test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class ArrayListTest {

    @Test
    public void testArrayList() {
        List list = new ArrayList<>();
        list.add("apple");
        list.add("banana");
        list.add("orange");

        Assert.assertEquals(3, list.size());
        Assert.assertTrue(list.contains("apple"));

        list.remove("banana");
        Assert.assertEquals(2, list.size());
        Assert.assertFalse(list.contains("banana"));
    }

    @Test
    public void testArraysAsList() {
        List list = new ArrayList<>(Arrays.asList("apple", "banana", "orange"));

        Assert.assertEquals(3, list.size());
        Assert.assertTrue(list.contains("apple"));

        list.remove("banana"); // 会抛出UnsupportedOperationException异常
        Assert.assertEquals(2, list.size());
        Assert.assertFalse(list.contains("banana"));
    }
}

在上面的代码中,我们分别测试了使用ArrayList和Arrays.asList()创建的List,通过断言来验证其元素个数和是否包含特定元素。然后尝试在Arrays.asList()创建的List上进行删除操作,发现会抛出UnsupportedOperationException异常。

为了解决这个问题,我们可以在Arrays.asList()返回的List上进行一次新的ArrayList的构造,如下所示:

List list = new ArrayList<>(Arrays.asList("apple", "banana", "orange"));

这样就可以使用ArrayList的所有方法,包括添加和删除元素。

相关内容

热门资讯

8分钟实锤!wpk俱乐部开挂实... 您好,wpk俱乐部这款游戏可以开挂的,确实是有挂的,需要了解加微【439369440】很多玩家在这款...
透明私人局!微扑克有假吗!竟然... 透明私人局!微扑克有假吗!竟然是真的有挂((2021已更新))(哔哩哔哩);是一款可以让一直输的玩家...
实测教程!德扑计算外挂透明挂辅... 实测教程!德扑计算外挂透明挂辅助神器,眯眯扑克赢,详细教程(讲解有挂)-哔哩哔哩;超受欢迎的眯眯扑克...
九分钟普及!微扑克辅助神器(辅... 1、九分钟普及!微扑克辅助神器(辅助挂)软件透明挂((2025已更新))(哔哩哔哩);该软件可以轻松...
分辨真假!wpk ai辅助有没... 分辨真假!wpk ai辅助有没有用!原来是真的有挂((2022已更新))(哔哩哔哩);超受欢迎的wp...
一分钟揭秘!wpk插件挂外挂透... 一分钟揭秘!wpk插件挂外挂透明挂辅助插件,pokermaster外挂,详细教程(有挂规律)-哔哩哔...
3分钟实锤!Aapoker a... 您好,Aapoker这款游戏可以开挂的,确实是有挂的,需要了解加微【757446909】很多玩家在这...
玩家亲测!德扑之星实战!确实是... 玩家亲测!德扑之星实战!确实是真的有挂((2023已更新))(哔哩哔哩);原来确实真的有挂(需添加指...
六分钟了解!wpk专用外挂透明... 六分钟了解!wpk专用外挂透明挂辅助插件,wpk俱乐部24小时,详细教程(有挂助手)-哔哩哔哩;致您...
五分钟了解!wpk德州透视辅助... 五分钟了解!wpk德州透视辅助(辅助挂)透视辅助((2024已更新))(哔哩哔哩),您好,德州透视这...