2012-06-06 6 views
0

if this 문은 항상 false를 반환하므로 거기에있는 두 줄을 실행하지 않습니다. 위의 행에서 단어가 실제로 동일한 지와 동일한 지 확인할 수 있습니다. 그래서 여기에 내가 완전히 잊어 버렸거나 내가 망쳤다는 무언가가 있습니까? 그것이 중요한 경우 나는 일식을 사용하고 있습니다.이 if 문이 올바르게 작동하지 않는 이유를 알 수 있습니까?

boolean wordHasElement = false; 
for (int firstdimension = 0; firstdimension <= wordnumber-1; firstdimension++){ 
    System.out.println("-"+ words[firstdimension][0] + "-" + linewords[linewordnumber] + "-"); 
    if (words[firstdimension][0] == linewords[linewordnumber]){ 
     System.out.println("Worked"); 
     wordHasElement = true; 
    } 
} 
+3

공백을 수정하십시오! –

답변

11

(단어 [firstdimension] [0] == linewords는 [linewordnumber는]) {

는 볼

if (words[firstdimension][0].equals(linewords[linewordnumber]){ 
  • == 체크로 대체되어야하는지 한 개체가 다른 개체와 동일하면 실제로 관심이 없습니다.
  • equals(...)은 두 문자열이 동일한 문자열 (동일한 순서로 같은 문자)을 포함하는지 확인합니다. 대소 문자가 아닌 경우 equalsIgnoreCase(...)을 사용할 수도 있습니다.
+0

나는 우리의 두 답변을 결합하고, 괜찮다면 그냥 삭제했습니다. 1+. –

+0

감사합니다. –

+0

흠 좋아, 고마워. :) 그래서 정확히 내가 전에 확인 했었던거야? (그냥 완전히 이해하려고 시도하는 것) – JKJones

관련 문제