检查ArrayList中的特定值

时间:2013-02-18 21:07:08

标签: arraylist

我需要确定ArrayList中的元素是否具有特定值。这是我正在尝试的当前方式。

 public static boolean hasDwgNamedReference(Object valueDWG){ 
  boolean b = false; 
  String dwgName = "dwg_";
  if(valueDWG == null){
     b = false;
  }
  else {
     String checkNamedRef = Arrays.toString((Object[]) valueDWG).substring(1, 5);
     System.out.println("checkNamedRef " + checkNamedRef + "\n");   
     if(checkNamedRef.equals(dwgName)){
           b = true; 
        }
  }
  return b;
 }// end hasDwgNamedReference    

我很确定问题出在

 String checkNamedRef = Arrays.toString((Object[]) valueDWG).substring(1, 5);

你认为我需要增加ArrayList并检查每个元素吗?

1 个答案:

答案 0 :(得分:0)

嗯,首先,您不需要包含第一个“if”语句。 b已经为假,因此再次将其设置为false是不必要的。

如果对对象使用Arrays.toString()方法,则可能会获得对象的标识,或者它所拥有的内存中的地址。如果你试图通过equals方法与checkNamedRef进行比较,你可能会比较一个地址和一个字符串,这将永远不会给你你正在寻找的真实。

相关问题