java获取List的长度,但总是得到= 1

时间:2016-05-14 18:08:29

标签: java arraylist

如何获取列表的长度,当我尝试打印它时,我得到结果= 1,即使列表中的值很多。

这是我的代码:

for(int i=0;i<lisPpob.size(); i++){
  // first code
  System.out.println("param 1 = "+ lisPpob.get(i).getLBRAP2T());

  //secount code
  List<String> lis= Arrays.asList(lisPpob.get(i).getLBRAP2T());
  System.out.println("length = " + lis.size());
}
我得到的第一个代码

param 1 = 986, 5785, 57, 675, 57

在我得到的第二个代码中:

length = 1

2 个答案:

答案 0 :(得分:0)

如果第一个print语句的输出是

param 1 = 986, 5785, 57, 675, 57

那么这意味着getLBRAP2T()的返回类型是一个String,而不是Collection / List / Set(会打印{{ 1}})或一个数组(会打印[])。 (也可能是xxxx@hhhh实现的某个对象。您当然可以通过告诉我们类型是什么来确认。)

因此,当您致电toString()时,您正在创建一个元素的列表:字符串。那是因为您只将一个参数传递给Arrays.asList(string),并且该参数不是非基本数组。

答案 1 :(得分:-1)

您似乎有一个需要拆分的字符串..

System.out.println("length = "+ lisPpob.get(i).getLBRAP2T().split(", ").length);