正在列表中获取java.lang.UnsupportedOperationException

正在列表中获取java.lang.UnsupportedOperationException,java,Java,我越来越 java.lang.UnsupportedOperationException 列表中的异常 为什么会出现这种异常 代码 List smsUserList=new ArrayList(); if(event.getEventTemplate().equalsIgnoreCase(CommunicationConstants.MEMBER)){ 字符串testNumbers=env.getRequiredProperty(CommunicationConstants.TEST\u SMS

我越来越

java.lang.UnsupportedOperationException

列表中的异常

为什么会出现这种异常

代码
List smsUserList=new ArrayList();
if(event.getEventTemplate().equalsIgnoreCase(CommunicationConstants.MEMBER)){
字符串testNumbers=env.getRequiredProperty(CommunicationConstants.TEST\u SMS\u numbers);
字符串[]testSmsNumber=testNumbers.split(“,”);
if(null!=testSmsNumber&&testSmsNumber.length>1){
smsUserList=Arrays.asList(testSmsNumber);
}
}
if(event.getEventTemplate().equalsIgnoreCase(CommunicationConstants.AGENT)){
字符串testNumbers=env.getRequiredProperty(CommunicationConstants.TEST\u SMS\u numbers);
字符串[]testSmsNumber=testNumbers.split(“,”);
if(null!=testSmsNumber&&testSmsNumber.length>1){
smsUserList=Arrays.asList(testSmsNumber);
}
}
设置smsRecipientAll=event.getSmsCommunicationRecipient();
用于(SMS通信收件人SMS收件人:SMS收件人所有){
字符串smsRecipientValue=smsRecipient.getRecipientGroupId().getReferenceTypeValue();
if(smsRecipientValue.equalsIgnoreCase(CommunicationConstants.MEMBER)){
列表成员联系人=(列表)通信输入
.get(通讯联系人、成员、联系电话、列表);
if(CollectionUtils.isNotEmpty(memberContact)){
for(字符串smsNumber:memberContact){
添加(smsNumber);
}
}
}
if(smsRecipientValue.equalsIgnoreCase(CommunicationConstants.AGENT)){
列表代理联系人=(列表)通信输入
.get(通讯联系人、代理人、联系人、电话号码、列表);
if(CollectionUtils.isNotEmpty(代理联系人)){
for(字符串smsNumber:agentContact){
添加(smsNumber);
}
}
}
}
数组。asList(testSmsNumber)返回一个固定大小的列表,因此不能向其中添加元素

改变

smsUserList = Arrays.asList(testSmsNumber);
smsUserList = Arrays.asList(testSmsNumber);

改变

不过,如果采用第二种方法,根据您的逻辑,您可能需要在
smsUserList.addAll()之前调用
smsUserList.clear()
(由于代码中有多个位置分配给
smsUserList
变量,因此您可能希望每次分配时清除
列表

数组。asList(testSmsNumber)
返回一个固定大小的列表,因此无法向其中添加元素

改变

smsUserList = Arrays.asList(testSmsNumber);
smsUserList = Arrays.asList(testSmsNumber);

改变


不过,如果采用第二种方法,根据您的逻辑,您可能需要在
smsUserList.addAll()之前调用
smsUserList.clear()
(由于您的代码中有多个位置分配给
smsUserList
变量,因此您可能希望在每次分配时清除
列表

我可以知道,您是从哪一行获得此信息的。?我可以知道,您是从哪一行获得此信息的。?
smsUserList = Arrays.asList(testSmsNumber);
smsUserList.addAll(Arrays.asList(testSmsNumber));