변수(value)란 값을 저장할 수 있는 메모리의 특정 번지에 붙이는 이름이다.
프로그램은 변수를 통해 메모리의 특정 번지에 값을 저장하고 읽을 수 있다.
변수를 데이터를 저장하기 위한 하나의 "바구니"라고 생각하자.
변수를 선언 후 값을 저장하면 ram 내 저장공간이 만들어진다.
자바는 변수 선언 시 데이터의 타입(type)을 지정하는데, 정수 타입의 변수에는 정수값만 실수 타입의 변수에는 실수값만 저장할 수 있다.
연산자(Operator) : 어떠한 기능을 수행하는 기호 (+, -, *, / 등)
피연산자(Operand) : 연산자의 작업 대상(변수, 상수, 리터럴, 수식)

문자열인 String 객체는 변수에 주소값을 저장한다. 따라서 산술 연산자인 '=='로 비교를 하게되면 주소값을 비교한다.
new 객체 생성 시 새로운 주소값을 할당하기 때문에 같은 문자열이더라도 '=='로 비교를 하면 false가 나온다.
따라서 문자열을 비교하기 위해서는 String.equals()을 사용한다.
public class Example {
public static void main(String[] args) {
String a = "호두";
String b = "호두";
String c = new String("호두");
System.out.println(a == b); // true
System.out.println(a == c); // false -> new 객체 생성 시 새로운 주소값 할당
System.out.println(a.equals(b)); // true
System.out.println(a.equals(c)); // true
}
}
본 포스팅은 멀티캠퍼스의 멀티잇 백엔드 개발(Java)의 교육을 수강하고 작성되었습니다.