和各位 V 友们一起讨论一下 Java 基础,有谁知道输出多少?为什么吗?

查看 101|回复 7
作者:singularity9866   
/**

  • @Author : @Singularity

  • @create @2023/9/27 17:29
    */
    public class Test {
    public static void main(String[] args) {
    List list = List.of("1", "2", "3");
    list.add("4");
    System.out.println(list); //输出多少?
    List collect = Stream.of("1", "2", "3").collect(Collectors.toList());
    list.add("4");
    System.out.println(collect); //输出多少?
    List stringList = Arrays.asList("1", "2", "3");
    stringList.add("4");
    System.out.println(stringList); //输出多少?
    }
    }

    list, string, collect, int

  • Enzoliu   
    这代码看的头疼,就不能格式化一下发出来吗?
    qczone   
    1. 异常,因为 List.of 创建的是一个不可变的列表,不能删除增加和修改元素。
    2. 应该是 collect.add("4")吧? 输出:[1, 2, 3, 4]
    3. 异常,Arrays.asList 创建的是一个可变列表,大小是固定的,可以更改列表中的元素,但不能添加或删除。
    YoungAD   
    @qczone Arrays.asList 不能 add 但是可以 set 好像
    qczone   
    @YoungAD 是的老哥
    wjx22   
    ```
    public static void main(String[] args) {
    List list = List.of("1", "2", "3");
    // list.add("4"); 报错
    System.out.println(list); //输出多少?
    List collect = Stream.of("1", "2", "3").collect(Collectors.toList());
    collect.add("4");// 正常
    System.out.println(collect); //输出多少?
    List stringList = Arrays.asList("1", "2", "3");
    // stringList.add("4"); 报错
    System.out.println(stringList); //输出多少?
    }
    ```
    yazinnnn0   
    有点过于八股了
    Leviathann   
    add 是陋习
    java 在朝着 fp 语言演进,比如 record 、List.of 统统都是 immutable ,pattern matching 也只适用于 immutable 的东西
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部