java代码中若一个方法可能返回String字符串或者arraylist数组,该如何实现
时间: 2024-05-14 22:20:01 浏览: 98
你可以使用 Java 的泛型来实现一个方法返回 String 或 ArrayList 数组。下面是一个示例代码:
```
public static <T> T exampleMethod() {
if (someCondition) {
return (T) "String value";
} else {
ArrayList<String> list = new ArrayList<>();
list.add("ArrayList value 1");
list.add("ArrayList value 2");
return (T) list;
}
}
```
在这个示例中,我们使用了泛型 `<T>`,它表示一个占位符类型,可以在方法调用时确定具体的类型。在方法中,我们通过 `if...else` 语句来判断应该返回一个 String 还是一个 ArrayList。在返回值处,我们使用 `(T)` 来将返回值类型转换为泛型类型。在方法调用时,你可以根据需要将返回值转换为 String 或 ArrayList 类型。例如:
```
String stringValue = exampleMethod();
ArrayList<String> arrayListValue = exampleMethod();
```
注意,这种实现方式需要你在调用该方法时确保返回值的类型正确。如果类型不匹配,可能会导致运行时异常。
阅读全文