cyn's blog cyn's blog
首页
  • java开发知识
  • 开发问题记录
  • 计算机网络
  • 数据结构与算法
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 实用技巧
个人简历
GitHub (opens new window)
首页
  • java开发知识
  • 开发问题记录
  • 计算机网络
  • 数据结构与算法
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 实用技巧
个人简历
GitHub (opens new window)
  • java技术

    • Java 快读快输出
    • 自定义比较器
    • session和token有什么区别?
    • HashMap为什么比数组查询快
    • int和Integer区别详解
    • String和StringBuffer
    • 接口和抽象类区别
    • 小数计算都是不精确的
    • 判断数组、字符串、集合为空和null
    • 布隆过滤器
    • Java实体类实现Serializable接口?(序列化)
    • java.util.Arrays.asList()
      • 注意点:
        • 不能将基本数据类型的数组作为参数,而要用包装类(对象型)数组或者stream流
        • 不支持add()、remove()、clear()等方法,即固定大小
        • 总结
    • URI_URL
    • volatile和synchronized的区别
    • Nginx+Tomcat实现负载均衡、动静分离集群
    • nginx常用命令
  • 开发问题记录

    • 关闭端口号占用的进程
    • 前后端跨域问题
    • java调用外部程序Runtime.getRuntime().exec
    • 静态资源映射,访问、上传到服务器本地
  • java开发
  • java技术
cyn
2023-05-26
目录

java.util.Arrays.asList()

作用:将一个数组转换为 List:

String[] myArray = { "Apple", "Banana", "Orange" };
List<String> myList = Arrays.asList(myArray); //将需要转化的数组作为参数
1
2

或者

List<String> myList = Arrays.asList("Apple", "Orange");//直接把数组元素作为参数
1

# 注意点:

# 不能将基本数据类型的数组作为参数,而要用包装类(对象型)数组或者stream流

:::info public static List asList(T... a) ::: T 是数组元素的 class。 基本数据类型,比如 int,short,long等,是没有这个属性的,具有 class 属性的是它们所对应的包装类 Integer,Short,Long。 或使用stream流:

public class Test {
   public static void main(String[] args) {
      int[] intArray = { 5, 10, 21 };
      //Java 8 新引入的 Stream 操作
      List myList = Arrays.stream(intArray).boxed().collect(Collectors.toList());
   }
}
1
2
3
4
5
6
7

# 不支持add()、remove()、clear()等方法,即固定大小

原因:内部类没有实现 解决:创建一个真正的 ArrayList

public class Test {
   public static void main(String[] args) {
      String[] myArray = { "Apple", "Banana", "Orange" };
      List<String> myList = new ArrayList<String>(Arrays.asList(myArray));
      myList.add("Guava");
   }
}
1
2
3
4
5
6
7

其中,把 asList 方法返回的集合作为构造器的参数传入,返回真正的集合。 其一构造器: image.png c :the Collection

# 总结

如果你的List只是用来遍历,就用Arrays.asList()。 如果你的List还要添加或删除元素,还是乖乖地new一个java.util.ArrayList,然后一个一个的添加元素。

编辑 (opens new window)
上次更新: 2023/05/26, 15:58:27
Java实体类实现Serializable接口?(序列化)
URI_URL

← Java实体类实现Serializable接口?(序列化) URI_URL→

Theme by Vdoing | Copyright © 2023-2023 cyn | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式