Java List.of()改写为jdk8

Java 8中没有直接等价的List.of()方法,因为List接口在Java 8中并没有引入任何新的默认方法。但是,你可以使用Arrays.asList()来实现类似的功能。

下面是一个示例代码,展示如何使用Arrays.asList()来创建一个固定大小的列表:

java 复制代码
import java.util.Arrays;
import java.util.List;
 
public class ListOfExample {
    public static void main(String[] args) {
        // Java 9+ List.of() example
        List<String> listOfStrings = List.of("a", "b", "c");
 
        // Java 8 Arrays.asList() equivalent
        List<String> listOfStringsJava8 = Arrays.asList("a", "b", "c");
 
        // Output
        System.out.println(listOfStrings);
        System.out.println(listOfStringsJava8);
    }
}

注意,Arrays.asList()返回的列表是固定大小的,即不支持添加或删除元素。如果需要一个可变的列表,你可以进一步将Arrays.asList()的结果传递给ArrayList的构造函数:

java 复制代码
List<String> mutableList = new ArrayList<>(Arrays.asList("a", "b", "c"));

这样得到的mutableList就是一个可变的列表,可以添加或删除元素。

另外lambda表达式中,jdk8写成List::of会语法错误,应写成Arrays::asList

提示:AI自动生成,仅供参考

相关推荐
松仔log19 分钟前
JetPack——Paging3+Room
android·java·zoom
biter down5 小时前
14:pytest-order 插件 顺序控制案例
开发语言·python·pytest
郝学胜-神的一滴5 小时前
Qt 高级开发 009: C++ Lambda 表达式
开发语言·c++·qt·软件构建
星栈独行5 小时前
我在 Rust 全栈项目里用 JWT 做无状态认证
开发语言·后端·rust·前端框架·开源·github·web
Lei活在当下6 小时前
先用起来,再理解,关于协程Coroutine应该知道的事
android·java·jvm
石山代码6 小时前
C++ 轻量级日志系统
开发语言·c++
Java爱好狂.6 小时前
Java程序员体系化学习路线(2026最新版)
java·后端·java面试·java架构师·java程序员·java八股文·java学习路线
tongluowan0076 小时前
以ReentrantLock为例解释AQS的工作流程
java·模板方法模式·aqs·reentrantlock
小技与小术6 小时前
玩转Flask
开发语言·python·flask
SilentSamsara6 小时前
Python 性能优化:tracemalloc、profiling 与 C 扩展加速
开发语言·python·青少年编程·性能优化