2013-05-12 2 views
-1

아래에서 강조 표시된 if 루프가 있습니다. 문제는 "secondentry"에 "literature"가 포함되어 있어도 if 루프가 올바르지 않은 경우에도 입력된다는 것입니다. 내가 놓친 게 있니? 여기 if 루프에서 문자열 비교가 작동하지 않습니다.

내 코드입니다 : -

if (strLine.contains(wID)) 
    { 
     String splitarray[] = strLine.split("\t"); 
String firstentry = splitarray[0]; 
String secondentry = splitarray[1]; 

    **if(secondentry!="literature")** 
       { 
      out.println ("Domain is: "+secondentry+"\n\n"+"<br/><br/>"); 
        %> 
     <INPUT TYPE="radio" NAME="r<%=k%>" VALUE="<%=wordID%>"> 
     <% 
     out.println("Gloss= "+word1.getSynset().getGloss()+"<br/><br/>"); 
     %> 
     <% 
    } 
    } 
+5

...'secondentry.equals ("문학") 자바에서' – johnchen902

+0

TOP 1 함정 : String 객체 참조 대신 문자열의 문자를 비교 ... – Mik378

+0

이것을 시도하십시오 : if (secondentry.equal ("literature")) – Somar

답변

0

당신은 방법을 사용한다는 문자열

!secondentry.equals("literature") 
0

비교 동일

당신은 포인터 경우 여기를 확인 (secondentry = "문학"!) 의 두 번째 항목은 문학의 포인터와 같습니다. 문자열의 equals 함수를 사용해야합니다. 예를 들면 다음과 같습니다. secondentry.equals (stringTocheckWith). !

+0

예 tht가 작동했습니다. 고맙습니다. 나는 asp.net에 익숙하므로 이것을 이해하지 못했다. 이 conccepts에 대한 참조를 좀 해주실 수 있습니다 –

0

secondentry.equals ("문학"); 다시 페이지

+0

감사합니다. –

관련 문제