List.get(0)在Eclipse的表达式窗口中工作正常,但是当我运行我的代码时,它将引发classcasteexception

时间:2019-07-19 06:11:54

标签: java eclipse classcastexception rest-assured

我从放心的post方法获取响应,并将响应存储在Arraylist中。当我尝试使用存储在Arraylist中的值(如list.get(0))时,会引发类等级异常,但在表达式窗口中,我可以看到存储在arraylist中的值。

1>我检查了放心返回的类型,它返回了arraylist。

2>我尝试使用哈希映射,但是没有运气

List<String> list = 
             ResponseHolder.response.then().extract().path("data");
//On below line exception is thrown
String a = list.get(0).toString();

请参阅屏幕截图以更好地理解。 enter image description here

2 个答案:

答案 0 :(得分:3)

ResponseHolder.response.then().extract().path("data");可能不返回List中的String

使用通配符?

List<?> list = 
             ResponseHolder.response.then().extract().path("data");
//On below line exception is thrown
String a = list.get(0).toString();

答案 1 :(得分:-2)

而不是

String a = list.get(0).toString();

尝试以下方法:

String a = (String) list.get(0);