Java无法添加新的列表项
我正在使用下面的代码从注册表生成一个列表Java无法添加新的列表项,java,list,Java,List,我正在使用下面的代码从注册表生成一个列表 List<String> options = Arrays.asList(Advapi32Util.registryGetStringArray(HKEY_LOCAL_MACHINE, key, value) 任何想法。数组。asList()返回一个不可变列表。相反,可以使用new ArrayList()。代码如下所示: List options=new ArrayList(Arrays.asList( registryGetStrin
List<String> options = Arrays.asList(Advapi32Util.registryGetStringArray(HKEY_LOCAL_MACHINE, key, value)
任何想法。数组。asList()返回一个不可变列表。相反,可以使用new ArrayList()
。代码如下所示:
List options=new ArrayList(Arrays.asList(
registryGetStringArray(HKEY_LOCAL_MACHINE,key,value));
选项。添加(“测试”);
Arrays.asList创建了无法修改的不可变列表。谢谢,让我尝试一下。Java似乎没有将其链接起来。类型列表中的方法add(String)不适用于参数(String[])。是因为我是从注册表中获取的吗?我忽略了该方法返回一个数组。由于可以将集合传递给ArrayList
构造函数,因此代码中唯一的更改就是使用new ArrayList()
对其进行包装。请参阅答案更新。
options.add("Test");
Exception in thread "AWT-EventQueue-0" java.lang.UnsupportedOperationException
at java.util.AbstractList.add(AbstractList.java:148)
at java.util.AbstractList.add(AbstractList.java:108)