본문 바로가기
자바공부/연산자

JAVA(자바) - 이항 연산자 3.비교 연산자(==, !=, <, <=, >, >=)

by You진 2020. 12. 30.

3.비교 연산자(==, !=, <, >, <=, >=)

- 대소(<,<=,>,>=) 또는 동등(==,!=) 비교해서 boolean 타입인 true/false를 산출(boolean타입에서 결과가 나오는 true/false 값을 나온다는 말)

구분 연산식 설명
동등
비교
피연산자 == 피연산자 두 피 연산자의 값이 같은지를 검사
피연산자 != 피연산자 두 피 연산자의 값이 다른지를 검사
크기
비교
피연산자 > 피연산자 피 연산자1이 큰지를 검사
피연산자 >= 피연산자 피 연산자1이 크거나 같은지를 검사
피연산자 < 피연산자 피 연산자1이 작은지를 검사
피연산자 <= 피연산자 피 연산자1이 작거나 같은지를 검사

- 동등 비교 연산자는 모든 타입에 사용

- 크기 비교 연산자는 boolean 타입을 제외한 모든 기본 타입에 사용

- 흐름 제어문인 조건문(if), 반복문(for,while)에서 주로 이용되어 실행 흐름을 제어할때 사용

public class CompareOperatorExample {
	public static void main(String[] args) {
		int num1 = 10;
		int num2 = 10;
		boolean result1 = (num1 == num2);
		boolean result2 = (num1 != num2);
		boolean result3 = (num1 <= num2);
		System.out.println("result1="+result1);
		System.out.println("result2="+result2);
		System.out.println("result3="+result3);
		
		char char1 = 'A';
		char char2 = 'B';
		boolean result4 = (char1<char2);
		System.out.println("result4="+result4);
	}
}
		실행 후 결과 값:
		result1=true
		result2=false
		result3=true
		result4=true
public class CompareOperatorExample2 {
	public static void main(String[] args) {
		int v2 = 1;
		double v3 = 1.0;
		System.out.println(v2 ==v3);
		
		double v4 = 0.1;
		float v5 = 0.1f;
		System.out.println(v4==v5);
		System.out.println((float)v4 == v5);
		System.out.println((int)(v4*10)==(int)(v5*10));
	}
}

- 문자열 비교

● String 타입의 문자열을 비교할 때에는 대소(<,<=,>,>=) 연산자를 사용할 수 없다.

● 동등(==, !=) 비교 연산자는 사용할 수 있으나, 문자열이 같은지, 다른지를 비교하는 용도로는 사용하지 않는다.

● 문자열 비교는 equals() 메소드를 사용해야 한다

문자열 리터럴일 동일하다면 동일한 String 객체를 참조한다!! 그래서 strVar1,strVar2는 같은 객체

public class StringEqualsExample {
	public static void main(String[] args) {
		String strVar1 ="신민철";
		String strVar2 ="신민철";
		String strVar3 =new String("신민철");
		
		System.out.println(strVar1 == strVar2);
		System.out.println(strVar1 == strVar3);
		System.out.println();
		System.out.println(strVar1.equals(strVar2));
		System.out.println(strVar1.equals(strVar3));
	}
} 
		실행 후 결과 값:
		true
		false
        
		true
		true