아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
그윽한고니91
그윽한고니9121.05.26

java if문 질문드립니다!!!

하나는 if(xnum1<=this.lsl && this.lsl <=xnum2){this.lsl = 1}else if x_num1>this.lsl){ this.lsl=2} 이거고

다른 하나의 조건문은 if(xnum1<=this.usl && this.usl <=xnum2){this.usl = 3}else if x_num1>this.usl){ this.usl=4} 이거인데 위에 else if의 lsl만 2가 아니라 4가 뜨네요ㅜㅜ 왜 그럴까요

55글자 더 채워주세요.
답변의 개수3개의 답변이 있어요!
  • 안녕하세요.

    일단 제한된 조건식만 가지고 정확히 알수 없으나, if문 전에 this.lsl = 4; 형태로 초기화 되어 있지 아닌지요?

    if(xnum1<=this.lsl && this.lsl <=xnum2){this.lsl = 1}else if x_num1>this.lsl){ this.lsl=2}

    if/else if 조건 둘다를 만족하지 않는 경우는 아무런 수행이 일어나지 않습니다.

    원하시는 문장은 아마 이렇게 되어야 하지 않을까 생각이 되네요

    if(xnum1<=this.lsl && this.lsl <=xnum2){

    this.lsl = 1;

    }else {

    this.lsl=2;

    }


  • if (xnum1<=this.lsl && this.lsl <=xnum2) { this.lsl = 1 } else if (x_num1>this.lsl) { this.lsl = 2 } if(xnum1<=this.usl && this.usl <=xnum2) { this.usl = 3 }else if (x_num1>this.usl) { this.usl = 4 }

    앞으로 문의할때 이렇게 보기쉽게 소스 올려주세요

    그리고 4가 뜨는 이유는 lsl 과 xnum1 , xnum2 에 저장된 값이 무엇인지

    알려드릴수 있을것 같네요


  • 아래 코드에서

    if(xnum1 <= this.lsl && this.lsl <= xnum2) { this.lsl = 1 } else if (x_num1>this.lsl){ this.lsl = 2}

    this.lsl이 원래 4였던게 아닐까요?

    this.lsl이 4였고 if 조건도 만족하지 않고, else if 조건도 만족하지 않았다면 this.lsl이 변경되지 않았을 겁니다.