当前位置: 首页 > 面试题库 >

使用Arrays.asList()初始化列表的最佳方法是什么?

司空鸣
2023-03-14
问题内容

我用下面的代码。两者在我的应用程序中都运行良好。

情况1。

List<String> coreModules =
    new ArrayList<String>(Arrays.asList(
        "TOOLBAR_TO_DO_LIST",
        "TOOLBAR_PROPERTY",
        "TOOLBAR_PEOPLE",
        "TOOLBAR_INSURANCE",
        "TOOLBAR_BATCH",
        "TOOLBAR_INFORMATION_REFERENCE",
        "TOOLBAR_LR_PROPERTY",
        "TOOLBAR_CASE_FOLDER",
        "TOOLBAR_INSPECTION_RESULT",
        "TOOLBAR_MY_OFFICE"));

情况2

List<String> coreModules =
    Arrays.asList(
        "TOOLBAR_TO_DO_LIST",
        "TOOLBAR_PROPERTY",
        "TOOLBAR_PEOPLE",
        "TOOLBAR_INSURANCE",
        "TOOLBAR_BATCH",
        "TOOLBAR_INFORMATION_REFERENCE",
        "TOOLBAR_LR_PROPERTY",
        "TOOLBAR_CASE_FOLDER",
        "TOOLBAR_INSPECTION_RESULT",
        "TOOLBAR_MY_OFFICE");

但是我有一些问题:

  1. 在性能方面哪个更好?
  2. 在哪种情况下,请选择案例2?

问题答案:

情况2在性能上是更好的BUT:它返回一个大小不变的List。意味着您不能在其中添加/删除元素:

返回由指定数组支持的 固定大小的 列表。(将返回的列表更改为“直写”到数组。)

Arrays#asList



 类似资料:
  • 我需要用大量的整数值预先填充列表。 除了迭代,还有更快的方法吗? 当前代码: 此代码位于一个非常频繁创建的类的构造函数中,因此我希望它尽可能高效(read:性能而不是代码行)

  • 本文向大家介绍Java用Arrays.asList初始化ArrayList实例方法,包括了Java用Arrays.asList初始化ArrayList实例方法的使用技巧和注意事项,需要的朋友参考一下 Java中使用Arrays.asList初始化ArrayList 运行结果为:[[0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6], [6, 7], [7,

  • 问题内容: 我正在寻找最短的方法(在代码中)初始化字符串列表和字符串数组,即包含“ s1”,“ s2”,“ s3”字符串元素的列表/数组。 问题答案: 有多种选择。我个人喜欢使用番石榴: (当然,番石榴是值得拥有的图书馆:) 仅使用JDK,您可以使用: 请注意,这将返回一个,但这 不是 正常的-这是一个内部变量,该变量是可变的但固定大小。 就我个人而言,我更喜欢Guava版本,因为它可以清楚说明正

  • 问题内容: 复制列表的最佳方法是什么?我知道以下方法,哪种更好?还是有另一种方法? 问题答案: 如果要浅拷贝(不复制元素),请使用: 如果要进行深层复制,请使用复制模块:

  • 考虑如下代码: vector<double> v = { 1, 2, 3.456, 99.99 }; list<pair<string,string>> languages = { {"Nygaard","Simula"}, {"Richards","BCPL"}, {"Ritchie","C"} }; map<vector<string>,vector<int>> years = {