- 산술 연산자: +, -, *, /, %(나머지 값)
- 증감 연산자: 1을 더하거나 빼는 연산자로 위치에 따라 결과값이 다르게 나타남
-전위 연산: (++3, --2) 연산자가 앞쪽에 배치 --> 다른 연산자보다 먼저 증/감
-후위 연산: (3++, 2--) 연산자가 뒤쪽에 배치 --> 다른 연산자보다 나중에 증/감
- 비교 연산자: 데이터가 같은지, 다른지 비교할 때 쓰이며 결과값은 항상 논리값(T/F)로 나타남
-<, >, <=, >=, ==, !=
-등호는 항상 오른쪽에 위치
- 논리 연산자: 논리값 두 개 비교하는 연산자(&&(And), ||(Or)
-&&(And): 다 true이면 true, 그 외의 경우에는 false (~와, ~이고, ~ 이면서, ~부터 ~까지, ~사이)
-||(Or): 둘 다 false이면 false, 나머지는 true (AND의 반대) (~또는, ~거나)
- 논리 부정 연산자: ! -> 논리 값을 반대로 바꾸는 연산자
- 복합 대입 연산자: +=, -=, *=, /=, %=
->피연산자가 자신과 연산 후 결과를 다시 자신에게 대입
- 삼항 연산자: 조건식 ? 식1 : 식2
조건식의 결과가 true이면 식1, 결과가 false이면 식2를 수행하는 연산자
*조건식: 연산 결과가 true/false인 식 (비교, 논리, 논리부정 연산 포함)
1. 코드 실행용 클래스
package edu.kh.op.ex;
public class ExampleRun {
public static void main(String[] args) {
OpExample ex = new OpExample();
ex.ex1();
ex.ex2();
ex.ex3();
ex.ex4();
ex.ex5();
ex.ex6();
ex.ex7();
ex.ex8();
}
}
2. 예제 코드 전용 클래스
package edu.kh.op.ex;
import java.util.Scanner;
public class OpExample {
public void ex1() {
System.out.println("OpExample 클래스에 ex1()기능 수행");
System.out.println("클레스 분리 테스트");
System.out.println("println 자동완성");
}
public void ex2() {
Scanner sc = new Scanner(System.in);
System.out.print("정수 입력1: ");
int input1 = sc.nextInt();
System.out.print("정수 입력2: ");
int input2 = sc.nextInt();
System.out.printf("%d / %d = %d\n", input1,input2, (input1/input2));
System.out.printf("%d %% %d = %d\n", input1,input2, (input1%input2));
}
public void ex3() {
int iNum1=10;
int iNum2=10;
iNum1++;
iNum2--;
System.out.println("iNum1: "+ iNum1);
System.out.println("iNum2: "+ iNum2);
int temp1=5;
System.out.println(++temp1+5);
System.out.println("temp1: "+temp1);
int temp2=3;
System.out.println(temp2-- +2);
System.out.println("temp2: "+temp2);
int a = 3;
int b = 5;
int c = a++ + --b;
System.out.printf("%d / %d / %d\n",a ,b, c);
}
public void ex4( ) {
int a =10;
int b = 20;
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a!=b);
System.out.println(a==b);
System.out.println((a==b) ==false);
System.out.println("------------------------------------------");
int c = 4;
int d = 5;
System.out.println( c<d );
System.out.println(c+1 <= d );
System.out.println((++c != d) == ( --c != d));
System.out.println("-------------------------------------------");
int temp = 723;
System.out.println("temp는 짝수인가? " + (temp % 2 ==0));
System.out.println("temp는 짝수인가? " + (temp % 2 !=1));
System.out.println("temp는 3의 배수인가? " + (temp %3 ==0));
System.out.println("temp는 4의 배수인가? " + (temp %4 ==0));
System.out.println("temp는 5의 배수인가? " + (temp %5 ==0));
}
public void ex5() {
int a = 100;
System.out.println("100이상인가? :" + (a>=100) );
System.out.println("짝수인가?: "+ (a % 2 ==0));
System.out.println("조건을 만족하는가? "+((a>=100) && (a % 2 ==0)));
int b =5;
System.out.println("1이상?: "+(b>=1));
System.out.println("10이하?: "+(b<=10));
System.out.println("조건 만족?: "+((b>=1)&&(b<=10)));
System.out.println("--------------------------------------------");
int c =10;
System.out.println((c>10)||(c%2==0));
}
public void ex6() {
boolean bool1 = true;
boolean bool2 = !bool1;
System.out.println("bool1: "+bool1);
System.out.println("bool2: "+bool2);
System.out.println("----------------------------------");
Scanner sc = new Scanner(System.in);
System.out.print("정수 입력: ");
int input = sc.nextInt();
boolean result1= (input>=1 && input<=100);
System.out.printf("%d은/는 1 이상, 100 이하의 정수인가?: %b\n", input, result1);
boolean result2 = (input<1 || input>100);
boolean result3 = !(input>=1 && input<=100);
System.out.printf("%d은/는 1 미만, 100 초과인가?: %b %b\n", input,result2,result3);
}
public void ex7() {
int a=1;
a++;
System.out.println("a를 1 증가: " +a);
a += 4;
System.out.println("a를 4 증가: "+ a);
a -= 10;
System.out.println("a를 10 감소: "+ a);
a *= 3;
System.out.println("a를 3배 증가: "+ a);
a /= 6;
System.out.println("a를 6으로 나눴을 때 몫: "+ a);
a %= 2;
System.out.println("a를 2로 나눴을 때 나머지: "+ a);
}
public void ex8() {
int num=30;
String str1 = "num은 30보다 큰 수이다.";
String str2 = "num은 30 이하의 수이다.";
String result = num>30 ? str1 : str2 ;
System.out.println(result);
System.out.println("----------------------------------");
Scanner sc = new Scanner(System.in);
System.out.print("정수 입력: ");
int input = sc.nextInt();
String str3="양수입니다.";
String str4="음수입니다.";
String result1 = input>=0 ? str3 : str4 ;
System.out.println(result1);
}
}