对象转换异常:[Ljava.lang.String; cannot be cast to java.lang.String

阅读更多
Entry.getValue() 返回的并不是单个字符串,而是数组。
所以以下代码将抛出:
[Ljava.lang.String; cannot be cast to java.lang.String

  if(obj instanceof Entry){
    String param = (String)((Entry)obj).getValue();
    System.out.println("是的!\t"+param);
  }


需修改为:
  if(obj instanceof Entry){
      String [] param = (String [])((Entry)obj).getValue();
      System.out.println("是的!\t"+param[0]);
  }


注:[Ljava.lang.String@1b634e7  --
   "[" 表示一维数组
    "[["表示二维数组
    "L"表示一个对象
    "java.lang.String"表示对象的类型
    "@"后面表示该对象的HashCode

你可能感兴趣的:(对象转换异常:[Ljava.lang.String; cannot be cast to java.lang.String)