下面是在strList5的subList.clear()调用中引发异常的代码:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public static List<String> removeRange(List<String> strList, int maxElementsToBeAllowedInList) {
if (strList.size() > maxElementsToBeAllowedInList) {
System.out.println("Clearing out sublist: ["
+ strList.subList(maxElementsToBeAllowedInList, strList.size()) + "]");
strList.subList(maxElementsToBeAllowedInList, strList.size()).clear();
}
return strList;
}
public static void main(String[] args) {
List<String> strList1 = new ArrayList<>();
List<String> strList2 = Arrays.asList("one", "two", "three");
List<String> strList3 = Arrays.asList("one", "two", "three", "four", "five");
List<String> strList4 = Arrays.asList("one", "two", "three", "four", "five", "six");
List<String> strList5 = Arrays.asList("one", "two", "three", "four", "five", "six", "seven", "eight");
try {
System.out.println("Before modification strList1: [" + strList1 + "]");
ListTruncateEndTest.removeRange(strList1, 5);
System.out.println("After modification strList1: [" + strList1 + "]");
System.out.println("Before modification strList2: [" + strList2 + "]");
ListTruncateEndTest.removeRange(strList2, 5);
System.out.println("After modification strList1: [" + strList2 + "]");
System.out.println("Before modification strList3: [" + strList3 + "]");
ListTruncateEndTest.removeRange(strList3, 5);
System.out.println("After modification strList1: [" + strList3 + "]");
System.out.println("Before modification strList4: [" + strList4 + "]");
ListTruncateEndTest.removeRange(strList4, 5);
System.out.println("After modification strList4: [" + strList4 + "]");
System.out.println("Before modification strList5: [" + strList5 + "]");
ListTruncateEndTest.removeRange(strList5, 5);
System.out.println("After modification strList5: [" + strList5 + "]");
} catch (Exception e) {
System.out.println("Error: [" + e.toString() + "]");
}
}
Before modification strList1: [[]]
After modification strList1: [[]]
Before modification strList2: [[one, two, three]]
After modification strList2: [[one, two, three]]
Before modification strList3: [[one, two, three, four, five]]
After modification strList3: [[one, two, three, four, five]]
Before modification strList4: [[one, two, three, four, five, six]]
Clearing out sublist: [[six]]
Error: [java.lang.UnsupportedOperationException]
我清除子列表的方式有问题吗?或者这是8Java的臭虫?我的Java8在Mac上的版本是:java版本"1.8.0_45"Java(TM)SE运行时环境(构建1.8.0_45-b14)JavaHotSpot(TM)64位服务器VM(构建25.45-b02,混合模式)
数组返回的列表。由于列表
是固定长度的,因此在子列表
s上调用清除
会引发不支持操作异常
。
您需要使用ArrayList
来代替。
List<String> strList2 = new ArrayList<>(Arrays.asList("one", "two", "three"));
我不知道;我不太明白在哪里可以抛出这个异常。 例如,我正在实现
相反,将引发“UnsupportedOperationException”。看起来ContainerRequest没有从修改的请求中提取UserPrincipal。 修改是通过 问题是如何将主体信息从HttpServerProbe传输到ContainerRequestFilter。request具有安全信息(在本例中是SSL客户机证书信息),而com.sun.jersey.spi.containe
我想从excel(.xlsx)文件中读取超过60万行。 我使用的是ApachePOI和xlsx拖缆。 Apache poi版本为3.15,因为xlsx streamer在上述版本中不支持 我只想迭代特定的列。我尝试过的是: 我得到这个例外,几乎没有警告 第35行是
我正在使用Collections.sort()对一个列表进行排序,它似乎在我可以测试的每一个方面都工作正常。我的一些用户崩溃了。 但是,我所做的只是尝试对列表进行排序 我注意到这在Android 8及更高版本上不会发生。它只发生在5.0 - 7.1上 该列表被实例化为ArrayList,被填充,并被设置为作为泛型列表的类的实例的成员。然后用EventBus发布这个对象。然后使用Kotlin的< c
我正在使用sql server进行数据库连接。并且我希望在运行多个结果集时保持结果集打开。我使用了,但在执行语句时出现以下错误, 由于我是使用sql server的新手,所以我对其中的一些概念还不是很了解。如果有人知道为什么会这样请回答我。
我正在使用 Netty 5.0。 我有一个补充的客户端引导程序,我以安全聊天客户端为例.java来自netty github的例子。Wenn 我从客户端引导程序向服务器发送消息,它工作得很好。当我尝试将消息从服务器引导程序发送到客户端时(首先通过客户端成功启动连接/通道后),我得到一个 没有任何进一步的信息。从服务器向客户端发送消息是通过上面的代码完成的。 服务器引导是否仅用于接收? 服务器引导程