如何在Java中使数组的元素不可变?


prtyaa
prtyaa 2024-01-09 21:58:57 53596 赞同 0 反对 0
分类: 资源 标签: 运维
不,你不能使数组的元素不可变。 但是,java.util.Collections类的unmodifiableList()方法接受一个List接口的对象(实现类的对象)并返回给定对象的不可修改形式。用户只能对获得的列表进行只读访问。

ArrayList类的asList()方法接受一个数组并返回一个List对象。

因此,要将数组转换为不可变的 –

  • 获取所需的数组。

  • 使用asList()方法将其转换为列表对象。

  • 将获得的列表作为参数传递给unmodifiableList()方法。

示例

演示

import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class UnmodifiableExample {
public static void main(String args[]) {
//Creating a string array
String strArray[] = {“Raju”, “Rama”, “Rahman”, “Rachel”, “Ranbhir”, “Rangan”};
//Converting the string array to list object
List list = Arrays.asList(strArray);
//Converting the List object to immutable
List immutable = Collections.unmodifiableList(list); System.out.println(immutable);
immutable.add(“komala”);
}
}

输出

[Raju, Rama, Rahman, Rachel, Ranbhir, Rangan]
Exception in thread “main” java.lang.UnsupportedOperationException
at java.util.Collections$UnmodifiableCollection.add(Unknown Source)
at September19.UnmodifiableExample.main(UnmodifiableExample.java:19)

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
prtyaaL2
粉丝 1 资源 1949 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  129
统信桌面专业版【全盘安装UOS系统】介绍  128
银河麒麟桌面操作系统安装佳能打印机驱动方法  119
银河麒麟桌面操作系统 V10-SP1用户密码修改  108
麒麟系统连接打印机常见问题及解决方法  21
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
麒麟系统连接打印机常见问题及解决方法 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益218元

3

1843880570 收益214.2元

4

IT-feng 收益210.13元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!