可以是以下形式之一:
方法一:使用 try-catch 块捕获异常
try {
List<String> strings = new ArrayList<>();
strings.add("Hello");
strings.add("World");
strings.add("!");
// 错误索引
int errorIndex = 3;
String errorString = strings.get(errorIndex);
System.out.println("错误字符串:" + errorString);
} catch (IndexOutOfBoundsException e) {
System.out.println("错误索引:" + e.getMessage());
}
方法二:使用条件判断进行索引检查
List<String> strings = new ArrayList<>();
strings.add("Hello");
strings.add("World");
strings.add("!");
// 错误索引
int errorIndex = 3;
if (errorIndex >= 0 && errorIndex < strings.size()) {
String errorString = strings.get(errorIndex);
System.out.println("错误字符串:" + errorString);
} else {
System.out.println("错误索引");
}
方法三:使用 Java 8 的 Optional 类型处理可能为空的索引
List<String> strings = new ArrayList<>();
strings.add("Hello");
strings.add("World");
strings.add("!");
// 错误索引
int errorIndex = 3;
Optional<String> errorStringOpt = Optional.ofNullable(strings.size() > errorIndex ? strings.get(errorIndex) : null);
if (errorStringOpt.isPresent()) {
String errorString = errorStringOpt.get();
System.out.println("错误字符串:" + errorString);
} else {
System.out.println("错误索引");
}
无论采用哪种方法,都应该进行索引范围的检查,以避免数组越界异常或空指针异常。同时,可以根据具体需求进行异常处理或给出错误提示。
领取专属 10元无门槛券
手把手带您无忧上云