我有一个非常简单的问题 -
我有一个名为DEClient
的类,其构造函数是这样的 -
public DEClient(List<DEKey> keys) {
process(keys);
}
DEKey
类是这样的 -
public class DEKey {
private String name;
private String value;
public DEKey(){
name = null;
value = null;
}
public DEKey(String name, String value){
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
现在我正在尝试实例化DEClient
构造函数。所以我需要List<DEKey>
。
所以我所做的是使用DEKey
(将返回service.getKeys()
)和String
作为值来实例化id
类,如下所示。
DEKey dk = new DEKey(service.getKeys(), id);
//The below line throws exception whenever I am running.
DEClient deClient = new DEClient((List<DEKey>) dk);
我在这里做错了什么?
答案 0 :(得分:1)
您需要先制作List
,然后将密钥添加到List
。像你已经完成的那样投射不是这样做的,因为DEKey
不一个List
并且投入它会抛出ClassCastException
。
DEKey dk = new DEKey(service.getKeys(), id);
List<DEKey> list = new ArrayList<DEKey>();
list.add (dk);
DEClient deClient = new DEClient(list);