byte , short , int , long : float , double : char : boolean : num = 0 ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; System . out . println ( ( ++ num % 2 == 0 ) &&(++ num % 3 == 0 ) ) ; && : Logical AND operator ( short circui , 단축 ) - 단축 논리곱 연산자 & : 비단 축 논리 AND num = 40 ; result =( num % 2 == 1 ) &&!( num <= 40 ) ; / / 단축 System . out . println ( num +" 은 홀수 이 고 40 이하 가 아닌가 ? -->"+ result ) ; result =( num % 2 == 1 ) &!( num <= 40 ) ; / / 비단 축 || : Logical OR operator ( short circuit , 단축 ) - 단축 논리합 연산자 | : 비단 축 논리 OR 1 == 1 || 100 == 20 ; / / 어차피 1 = 1 이기 에 한 가지 만 검사 하 면 다음 연산자 는 검사 안 한다 . 단축 1 == 1 | 100 == 20 ; / / 양 피 연산자 를 반드시 검사 , 둘 다 검사 한다 ! 비단 축 ! Exclusive OR operator ( 배타 적 OR 연산자 , XOR ) ; 1 == 1 || 2 == 2 양쪽 이 트루 인 것 을 배척 , 이런 경우 는 펄스 가 온다 . 둘 다 트루 인 것 을 배척 ! ! 그래서 결과 는 펄스 . 1 == 1 ^ 2 == 2 배타 적 오 알 , 둘 다 트루 인 것 을 배척 , 한쪽 이 트루 인 것 만 취하 겠 다는 표시 . ! ( 1 == 2 ) 이것 은 트루 ! 삼항 연산자 A ? B : CA 에 는 boolean 형 이 오 면 된다 . B 는 자바 로 표현 될 수 있 는 모든 자료 형 C 도 자바 로 표현 될 수 있 는 모든 자료 형 . 10 % 2 == 0 ? " 짝수 " : " 홀수 " ; A 가 트루 인 경우 물음표 뒤 에 있 는 것 이 나온다 . 저게 트루 면 짝수 라는 문자 가 나온다 . String str = 10 % 2 == 0 ? " 짝수 " : " 홀수 "; 이렇게 하 면 판정 이 나온다 . 10 % 2 == 0 ? true : false ; boolean result = 10 % 2 == 0 ? true : false ; int i = 10 % 2 == 0 ? 1 : 0 ; 배정 , 할당 , 대입 연산자 , Assignment operator : 연산자 우측 에 있 는 값 을 복사 해서 왼쪽 의 변수 에 저장 한다 . += : 덧셈 을 먼저 하 고 그 결과 를 왼쪽 에 저장 한다 . >>= : 우측 으로 비트 를 옮긴 후 에 그 결과 를 왼쪽 에 저장 한다 . *= : 먼저 곱셈 한 후 에 그 결과 를 왼쪽 에 저장 한다 . int data = 0 ; data + = 1 ; / / 원래 데이터 가 0 인데 + 1 하 니까 1 인데 = 표시 는 그것 을 다시 데이터 에 집어넣 어라 . 그래서 데이터 는 1 이 된다 . data + = 2 ; / / 이것 은 3 이 된다 . data >>= 1 ; 이 값 을 우측 으로 비트 를 1 칸 옮기 고 그 속성 을 다시 한 번 적용 ( =). 10 에서 시작 하 여 0 까지 합산 하 여 그 결과 를 출력 하 는 프로그램 을 작성 해 보 세요 . public class LogicalOp { public static void main ( String [ ] args ) { int A = 10 ; int B = 0 ; B += A ; B += -- A ; B += -- A ; B += -- A ; B += -- A ; B += -- A ; B += -- A ; B += -- A ; B += -- A ; B += -- A ; B += -- A ; System . out . println ( B ) ; }}---------- java ---------- 55 출력 완료 ( 0 초 경과 ) - 정상 종 선생 님 의 예 int n = 10 ; int sum = 0 ; sum += n --; sum += n --; sum += n --; sum += n --; sum += n --; sum += n --; sum += n --; sum += n --; sum += n --; sum += n --; sum += n --; System . out . println ( " 10 ~ 0 까지 의 합산 결과 : "+ sum ) ; / / 후 증가 로 해야 한다 . 내 코딩 은 어색 ;;;; pivonacci 수열 1 , 2 , 3 , 5 , 8 , 13 , ... 앞 에 있 는 두 수 를 더 해서 그 결과 가 다음 수 가 된다 . public class Pivonacci { public static void main ( String [ ] args ) { / / 1 , 2 , 3 , 5 , 8 , 13 , .... 10 개 나올 수 있 게 . . int n 1 = 1 ; int n 2 = 2 ; int n 3 = 0 ; System . out . print ( n 1 +","+ n 2 ) ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; n 1 = n 2 ; n 2 = n 3 ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; n 1 = n 2 ; n 2 = n 3 ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; n 1 = n 2 ; n 2 = n 3 ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; n 1 = n 2 ; n 2 = n 3 ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; n 1 = n 2 ; n 2 = n 3 ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; n 1 = n 2 ; n 2 = n 3 ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; n 1 = n 2 ; n 2 = n 3 ; n 3 = n 1 + n 2 ; System . out . print ( ","+ n 3 ) ; } } ---------- java ---------- 1 , 2 , 3 , 5 , 8 , 13 , 21 , 34 , 55 , 89 출력 완료 ( 0 초 경과 ) - 정상 종료 1 부터 10 사이 에 존재 하 는 홀수 정수 의 합 을 구해서 출력 하 세요 . 3 항연 산자 를 사용 하 면 쉽 다 . public class Pivonacci { public static void main ( String [ ] args ) { / / 1 부터 10 사이 에 존재 하 는 홀수 정수 의 합 을 구해서 출력 하 세요 / / 3 항 연산자 를 사용 하 면 쉽 게 된다 . int n = 0 ; int sum = 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; sum += ++ n % 2 == 1 ? n : 0 ; System . out . println ( " 1 ~ 10 사이 에 존재 하 는 홀수 정수 의 합 "+ sum ) ; }}---------- java ---------- 1 ~ 10 사이 에 존재 하 는 홀수 정수 의 합 25 출력 완료 ( 0 초 경과 ) - 정상 종료 단항 , 이항 ( 산술 ( 곱 , 나 , 덧 , 뺼 ) 비교 , 논리 ) , 3 항 , 대입 이런 순 으로 먼저 실행 된다 . ++ 이게 제일 먼저 public class CountTest { public static void main ( String [ ] args ) { / / 1 ~ 10 사이 에 존재 하 는 2 의 배수 이 면서 3 의 배수 의 갯 수 를 구해서 출력 해 보 세요 int n = 0 ; int num = 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; num = ( ( ++ n % 2 == 0 ) &&(++ n % 3 == 0 ) ) ? 1 : 0 ; System . out . println ( " 갯 수 는 "+ num +" 개 "); } } ---------- java ---------- 갯 수 는 1 개 출력 완료 ( 0 초 경과 ) - 정상 종료 선생 님 의 예 int count = 0 ; int num = 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; count += ++ num % 2 == 0 && num % 3 == 0 ? 1 : 0 ; System . out . println ( " 2 의 배수 이 면서 3 의 배수 인 정수 의 갯 수 ""+ count ) ; 구구단 5 단 ~!! public class OperatorGugu { public static void main ( String [ ] args ) { / / 구구단 5 단 을 출력 하 되 다음 과 같 은 형태 로 출력 되 도록 해 보 세요 . // 5 x 1 = 5 / / 5 x 2 = 10 / / 주의 : 출력 되 는 숫자 는 Hard - Coding 하 지 말 고 반드시 표현식 을 쓰 도록 . int n = 5 ; int num = 1 ; int A = n * num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; A = n * ++ num ; System . out . println ( n +" x "+ num +"="+ A ) ; }}---------- java ---------- 5 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 255 x 6 = 305 x 7 = 355 x 8 = 405 x 9 = 45 출력 완료 ( 0 초 경과 ) - 정상 종료 선생 님 의 예 int dan = 5 ; int i = 0 ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; System . out . println ( dan + " x " + ++ i + "=" + dan * i ) ; / / 5 ! = 5 x 4 x 3 x 2 x 17 ! = public class OperatorGugu { public static void main ( String [ ] args ) { / / 7 ! 출력 하 기 int n = 1 ; int num = 7 ; int A = n * num ; System . out . print ( " 7 ! ="+ num ) ; A = n * -- num ; System . out . print ( " x "+ num ) ; A = n * -- num ; System . out . print ( " x "+ num ) ; A = n * -- num ; System . out . print ( " x "+ num ) ; A = n * -- num ; System . out . print ( " x "+ num ) ; A = n * -- num ; System . out . print ( " x "+ num ) ; A = n * -- num ; System . out . print ( " x "+ num ) ; }} / / 이 답 은 7 ! = 7 x 6 x 5 x 4 x 3 x 2 x 1 로 나온다 . public class OperatorGugu { public static void main ( String [ ] args ) { / / 7 ! 출력 하 기 int n = 1 ; int num = 7 ; int A = n * num ; A *= n * -- num ; A *= n * -- num ; A *= n * -- num ; A *= n * -- num ; A *= n * -- num ; A *= n * -- num ; System . out . print ( A ) ; }}---------- java ---------- 5040 출력 완료 ( 0 초 경과 ) - 정상 종료 선생 님 의 예 int num = 7 ; int result = 1 ; result *= num --; result *= num --; result *= num --; result *= num --; result *= num --; result *= num --; System . out . println ( num +"!="+ result ) ; int num = 0 ; num = 100 ; 변수 는 최종 적 으로 대입 된 한 개 의 값 만 저장 하 는 공간 이 다 . 배열 ( array ) 은 한 개 의 이름 으로 다 수개 의 값 을 입출력 할 수 있 는 데이터 구조 이 다 . int num = 0 ; int [ ] arr ; / / int 형 데이터 를 다 수개 저장 할 수 있 는 배열 , 이름 은 arr . arr = new int [ 5 ] ; / / 정수 5 개 를 저장 할 공간 ( 20 바이트 ) 을 확보 하 여 그 메모리 주소 를 arr 변수 에 저장 한다 . new : 컴파일 타임 이 아닌 , 실행 시간 에 동적 인 메모리 를 할당 하 고자 할 때 사용 하 는 키워드 . int count = 5 ; arr = new int [ count ] ->> 바 열 의 원소 초기 화 ( Initialization ) arr [ 0 ] = 100 ; / / 0 번방 에 100 을 넣 어라 . arr [ 1 ] = 200 ; arr [ 2 ] = 300 ; arr [ 3 ] = 400 ; arr [ 4 ] = 500 ; arr [ 5 ] = 600 ; int idx = 0 ; arr [ idx ++] = 100 ; arr [ idx ++] = 200 ; arr [ idx ++] = 300 ; arr [ idx ++] = 400 ; arr [ idx ++] = 500 ; --> 배열 의 사용 System . out . println ( " 배열 의 두 번 째 원소 값 : "+ arr [ 1 ] ) ; int num 2 = arr [ 1 ] ; System . out . println ( " 배열 의 두 번 째 원소 값 : "+ num 2 ) ;// 순서 . 1 . 배열 변수 선언 2 . 메모리 확보 ( 할당 ) 3 . 원소 초기 화 4 . 사용 int [ ] price = { 100 , 200 , 300 }, / / 배열 변수 의 선언 , 메모리 할당 , 원소 초기 화 System . out . println ( " 배열 의 두 번 째 원소 값 : "+ price [ 1 ] ) ; 1 ~ 10 사이 에 존재 하 는 짝수 를 모두 찾 아서 배열 에 저장 하 고 , 그 배열 의 원소 의 합 을 구해서 출력 하 는 프로그램 을 작성 해 보 세요 . public class OperatorGugu { public static void main ( String [ ] args ) { / / 1 ~ 10 사이 에 존재 하 는 짝수 를 모두 찾 아서 배열 에 저장 하 고 , 그 배열 의 원소 의 합 을 구해서 / / 출력 하 는 프로그램 을 작성 해 보 세요 . int arr [ ] = new int [ 5 ] ; int num = 0 ; int sum = 0 ; int idx = 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; sum += ++ num % 2 == 0 ? arr [ idx ++] = num : 0 ; System . out . println ( sum ) ; }}---------- java ---------- 30 출력 완료 ( 0 초 경과 ) - 정상 종료 new : 동적 으로 메모리 를 할당 받 고 주소 를 리턴 한다 . 선생 님 의 예 1 ~ 10 사이 에 존재 하 는 짝수 를 모두 찾 아서 배열 에 저장 하 고 , 그 배열 의 원소 의 합 을 구해서 출력 하 는 프로그램 을 작성 해 보 세요 . int num = 0 ; int [ ] arr = new int [ 10 ] ; int idx = 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; arr [ idx ++] = ++ num % 2 == 0 ? num : 0 ; int sum = 0 ; idx = 1 ; sum += arr [ idx ] ; sum += arr [ idx += 2 ] ; sum += arr [ idx += 2 ] ; sum += arr [ idx += 2 ] ; sum += arr [ idx += 2 ] ; System . out . println ( " arr 원소 의 합 : "+ sum ) ; < 숙제 > 10 ~ 1 까지 일련 의 수 를 배열 에 저장 하 고 , 그 배열 의 원소 중 에서 3 의 배수 만 골라 그 합 을 구해 보 세요 . public class Nara { public static void main ( String [ ] args ) { / / 10 ~ 1 까지 일련 의 수 를 배열 에 저장 하 고 , 그 배열 의 원소 중 에서 3 의 배수 만 골라 그 합 을 구해 보 세요 . int num = 0 ; int [ ] arr = new int [ 11 ] ; int idx = 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; arr [ idx ++] += ++ num % 3 == 0 ? num : 0 ; int sum = 0 ; idx = 0 ; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; sum += arr [ idx ++]; System . out . println ( " 3 의 배수 : "+ sum ) ; }}---------- java ---------- 3 의 배수 : 18 출력 완료 ( 0 초 경과 ) - 정상 종료