访问Array中对象的索引位置

时间:2014-06-06 10:54:50

标签: java arrays object indexing

您好我想知道如何访问数组中对象的索引位置。我有一个搜索方法,搜索我想要的对象,然后一旦我有这个,我希望能够检索其索引位置。我的搜索方法如下:

public megs find(String lName)      // find specified value
{
  int j;
  int location;
  for(j=0; j<nElems; j++){          // for each element
     if(a[j].getLast().equals(lName))       // found item?
        location=j;
     break;                 // exit loop before end
  }
  if(j==nElems)             // gone to end?
     return null;               // yes, can’t find it
   else
     return a[j];               // no, found it

  } // end find

我尝试过使用for循环的单独方法并返回j,但它总是返回0.

public static int get(String sk) {

  int j;
  for(j=0; j<nElems; j++)
     if(a[j].equals(sk))
       return j;   
   }

3 个答案:

答案 0 :(得分:0)

至少这里的代码是明确错误的:

for(j=0; j<nElems; j++){          // for each element
 if(a[j].getLast().equals(lName))       // found item?
    location=j;
 break;                 // exit loop before end
}

break始终执行,您应该在此使用此代码:

for(j=0; j<nElems; j++){          // for each element
 if(a[j].getLast().equals(lName)) {       // found item?
    location=j;
    break;                 // exit loop before end
 }
}

答案 1 :(得分:0)

public class java1 {

static String a[]={"ak","jk","kl"};

public static int get(String sk){
    int j;
    for(j=0;j<3;j++){
        if(a[j].equals(sk)){
            return j;
        }
    }

    return -1;

}

public static void main(String[] args) {
    int x=get("jk");
    System.out.println(x);
}
}

答案 2 :(得分:0)

public class java1 {

public static int get(String sk,String a[],int n){
    int j;
    for(j=0;j<n;j++){
        if(a[j].equals(sk)){
            return j;
        }
    }

    return -1;

}

public static void main(String[] args) {
    String a[]={"ak","jk","kl"};
    int x=get("jk",a,3);
    System.out.println(x);
}
}