出现这个错误怎么解决No primary or single unique constructor found for interface java.util.List
时间: 2023-10-25 22:11:42 浏览: 474
这个错误通常是因为你在某个地方要求使用了一个 List 类型的对象,但是没有给它一个初始值或者没有定义构造函数。
要解决这个问题,你需要检查代码中使用到 List 类型的地方。如果是在类的成员变量中使用了 List 类型,你需要为这个变量添加一个构造函数。
例如:
```
public class MyClass {
private List<String> myList;
public MyClass() {
myList = new ArrayList<>();
}
}
```
如果是在方法中使用了 List 类型,你可以在方法中直接初始化这个变量。
例如:
```
public void myMethod() {
List<String> myList = new ArrayList<>();
// 使用 myList
}
```
如果你已经给 List 变量赋了值,那么你需要检查是否给的初始值类型正确、是否为空等问题。
相关问题
no primary or single unique constructor found for interface java.util.List解决
这个错误通常出现在试图创建`java.util.List`接口的实例时,因为`List`是一个接口,而不是具体的类,它本身没有直接的构造函数。`List`是一组操作集合的通用接口,如ArrayList、LinkedList等实现类会提供各自的构造方法。
当你看到"No primary or single unique constructor found"这样的消息,意味着你无法通过接口本身的构造函数来实例化一个列表,需要通过实现该接口的具体类来创建。例如,如果你想创建一个ArrayList,应该这样做:
```java
import java.util.ArrayList;
ArrayList<String> myList = new ArrayList<String>();
```
如果你尝试使用`new List()`,你会遇到这个问题,因为`List`没有提供构造器。如果遇到这种情况,你应该检查你的代码并确保你正在实例化的类是正确的,并且它有你需要的构造器。如果你是在试图初始化一个List作为方法返回值,确保那个方法返回的是实现`List`的适当类型。
No primary or single unique constructor found for interface java.util.List
这个错误提示通常发生在您在代码中使用了接口 `java.util.List`,但是没有实现它的任何具体类或没有使用它的任何实现类进行初始化。解决这个问题的方法是使用具体的实现类来初始化 `List` 对象,例如 `ArrayList`、`LinkedList` 等等。例如,您可以使用以下代码初始化一个 `ArrayList` 对象:
```
List<String> myList = new ArrayList<>();
```
这将初始化一个 `ArrayList` 对象并将其赋值给 `myList` 变量。现在,您可以使用 `myList` 来向列表中添加元素并执行其他操作。
阅读全文