2012-05-20 5 views
0

저는 profId, firstname, lastname, age와 같은 데이터를 포함하는 ArrayList를가집니다.ArrayList 반복 및 일치 항목 가져 오기

이제 사용자 양식에서 가져온 성 및 이름이 있습니다. 이제 ArrayList와 비교하고 싶습니다. 둘 다 일치하면 "해당 profId"를 검색하려고합니다.

예를 들어 ArrayList를이

profId LASTNAME의 fistname 연령 등의 데이터

1 로이 샘 (25)

2 ryob의 arnav 30

이제 사용자가 LASTNAME 입력 로이 같은 FIRSTNAME 것 포함 및 sam. 나는이 데이터를 getter 메소드로 얻을 것이다.

'1': 나는 그를의 완벽한 profid를 얻을 수 있도록 지금

는 어떻게 ArrayList의 이러한 두 이름을 비교해야한다.

나는이 방법으로 비교하려고합니다.

// existPatList is arraylist patfamily is object of Family from where I will get users value 

for(Family p : existPatList) { 
    System.out.println("Last name" +p.getLastName());    
    System.out.println("First name"+p.getFirstName()); 
    if(p.getLastName().equalsIgnoreCase(patFamily.getLastName())) { 
     System.out.println("got it");  
    } 
} 

이 문제를 어떻게 해결할 수 있습니까?

+3

profId에 대한 GET 방법도있다 getters 여기에 무슨 문제가 있니? 오류/버그가 있습니까? – Asif

+0

나는 일치하고 분명하게 그것의 주목할만한 profid를 얻을 수 없다. – Java

+0

잘 그게 _ 표준 문제가 아니야. _ .. 당신이 출력으로 얻고있는 것을 알려주십시오. 코드가 예상대로 실행되고, 오류/버그를 얻었을 때, 프로그램 제어가 'if'조건에 들어가는가, 아니겠습니까? 가능한 이유는 _ 당신이 match_을 얻을 수없는 이유는, 그것은 당신의 루프를 제외하고 다른 이유가 될 수 있습니다 .. – Asif

답변

2

firstNamelastName이 모두있는 if 조건에서 &&을 사용하십시오.

for(Family p : existPatList) { 
    System.out.println("Last name" +p.getLastName());    
    System.out.println("First name"+p.getFirstName()); 
    if(p.getFirstName().equalsIgnoreCase(patFamily.getFirstName()) && p.getLastName().equalsIgnoreCase(patFamily.getLastName())) { 
     System.out.println("got it");  
    } 
} 

profId이 라인 교체 얻으려면 : 여기 고려

System.out.println(p.getProfId); //or do whatever you wanna do with profId 

System.out.println("got it"); 

을 당신은 그 그래서 getProfId()

+0

나는 노력하고 있지만 그 작동하지 ... 그리고 한가지는 일치 후 나는 그 각각의 profId를 얻고 싶습니다, 이것이 내가 모든 일을하는 주된 일입니다. – Java

+0

업데이트 된 답변보기 – Asif

+0

예, 상태라면 조건을 시도했지만 조건이 만족스럽지 않으면 컨트롤이 내부에 들어 가지 않습니다. – Java

관련 문제