inflearn logo
강의

Course

Instructor

Do it! Introduction to Java Programming with Eun Jong

Various operators in Java (1)

i 가 증가되지 않았다는 게 이해가 안갑니다.

202

pompomyena

21 asked

0

package assignment;

 

public class OperationEx3 {

public static void main(String[] args) {

int num1 = 10;

int i =2;

boolean value = ( ((num1=num1+10)>10)&&((i = i+2)>10) );

System.out.println(value);

System.out.println(num1);

System.out.println(i);

}

}

결과 : false

20

4

 

i 가 증가가 되지 않았다고 했는데 

이미 4로 증가되지 않았나요 ? (강의 22:42) 

java

Answer 1

1

seung lee

((num1 = num1 + 10) > 10) && ((i = i+2) > 10)

&&는 앞부분식, 뒷부분식 둘다 참이어야지만 참인거 알죠?

&&앞부분 식이 참인건 알겠죠? num1이 10이니까 20>10은 참이잖아요

그럼 &&뒷부분까지 참인걸 따져봐야 전체가 참인지 알 수 있으니까 뒷부분의 명령도 실행해서 i에다가 i+2를 대입시키는 거예요

만약

((num1 = num1 + 10) < 10) && ((i = i+2) > 10)

          ( '<' 이 부호만 반대로 바꿨습니다.)

이렇게 코드를 짜놓으면 

&&앞부분이 거짓인건 알겠죠? num1이 10이니까 20<10 이 식은 거짓이잖아요. 그러면 뒷부분은 실행할 필요도 없이 전체 식이 거짓이 되는거라 뒷부분의 i=i+2 실행을 하지 않아서 증가하지 않는거예요

이클립스 활성화가 안되는부분이있어요ㅜㅜ

0

429

1

책에 자료실

0

495

1

StudentID

0

553

1

인터페이스와 가상 메서드

0

354

1

11분쯤 price, int price 질문

0

350

1

For문 (중첩된 반복문) 구구단 문의 드립니다.

0

782

1

반복문 별 출력 연습문제

0

390

1

비트 연산자 질문입니다.

1

367

1

Scheduler scheduler = null 굳이 하는 이유가 있나요

1

333

0

Class간의 연결

1

292

1

선생님 스킬

0

392

1

초기화 에러!!!

0

282

1

선생님 영상에서 목소리가 좀 작은 것 같습니다 ㅠㅠ

2

300

0

출력

2

230

0

Main 함수 저번 강의 거가 나와요

0

312

1

결과값오류

1

222

0

printIn 함수 질문

0

449

1

24분 57초에 질문 있습니다!!

0

359

1

1분36초쯤에 말씀하시는 자바닥??그거 보라고 하셨는데 자바닥이 뭐죠..?

0

246

1

메서드와 생성자

0

393

2

참조형 데이터 타입은 클래스 이름과 같아야 하나요?

0

282

1

반환값은 정수 밖에 안되나요?

0

271

1

9분33초 설명!!부탁 드립니다!

0

296

1

48분쯤에 {"B","C","D""} 를 왜 {'B','C','D'}로 바꿨죠?

0

294

1