들어가기 전
해당 내용은 자바의 신 3판을 읽고 내용 정리 및 공부한 내용을 정리한 글입니다!
자바의 신 Vol 1: 기초 문법편 | 이상민 - 교보문고
자바의 신 Vol 1: 기초 문법편 | 현장 전문가가 쓴 자바 기초 입문서다. NAVER, NHN, SKPlanet 등에서 성능 전문가의 풍부한 경험을 바탕으로 자바를 실무에 맞게 제대로 쓸 줄 알게 해주는 입문서를 목
product.kyobobook.co.kr
5장.계산을 하고 싶어요
1. 연산자
기본 자료형을 제외한 참조 자료형은 항상 예외가 되는 String 이라는 클래스만이 + 연산이 가능하다.
다시 말해서 계산을 위한 산술 연산자는 기본 자료형 중에서 boolean을 제외한 나머지 타입에서 사용할 수 있다.
2. 연산자의 종류
(1) 대입연산자 =
(2) 산술연산자 + - * / %
▪ / : 나누기를 할때에는 타입을 float 나 double형으로 변경해야지만 소수형으로 결과가 나온다.
▪ % : 나누기를 한 후 나머지를 확인할 수 있는데, 어떤 값이 N의 배수인지 확인하고 싶을 때 사용 가능하다.
(3) 복합대입연산자 += -= *= /= %=
(4) 단항 연산자 + - ++ -- !
▪ + : 변수 x (1)을 의미하며 양수를 의미 하지만 굳이 쓸 필요는 없다.
▪ - : 변수 x (-1)을 의미하며 음수를 의미한다.
▪ ++ : 1만큼 증가
▪ -- : 1만큼 감소
👾 ++2 vs 2++ --2 vs 2-- 차이점
public void increment(){
int intValue = 1;
System.out.println(intValue++);
System.out.println(intValue);
System.out.println(++intValue);
}
출력결과
1 : 수행하여 결과를 출력한 후 1를 더함
2 : 출력문 그대로 출력
3 : 출력문 수행하기 전 1를 더함
(5) 논리부정연산자 !
▪ boolean 타입만 이연산자를 사용할 수 있다.
(6) 비교연산자
▪ 모든 비교 연산자의 결과는 반드시 boolean이다. 해당 조건이 맞으면 true 이고 그렇지 않으면 false가 된다.
① 등가 비교 연산자 == !=
▪ == : 두개의 값이 같으면 true
▪ != : 두개의 값이 같지 않으면 true
💡 기본 자료형과 참조자료형, 즉 모든 타입에서 사용할 수 있다.
char charVal = 'a';
int intVal = 1;
double dobelVal - 1.0;
System.out.println(97 == charVal); // true
System.out.println(intval == doubleVal); // true
// 아스키코드 97 = 'a'이기 때문에 true 가 출력
// 같은 숫자형은 int와 double도 true 가 출력
② 대소 비교 연산자 < > <= >=
▪ < : 두개의 값이 같으면 true
▪ > : 두개의 값이 같지 않으면 true
▪ <= : 두개의 값이 같지 않으면 true
▪ >= : 두개의 값이 같지 않으면 true
💡 boolean이나 참조자료형에서는 사용할 수 없다.
③ 논리 연산자 && ||
▪ && : AND 결합으로 두 값이 모두 true 일 경우에만 true
▪ || : OR 결합으로 두 값이 서로 다를 경우에만 true이거나 false이면 false
④ 삼항 연산자 ? :
▪ 변수 = 조건식 ? true 값 : false 값
3. 형 변환
서로 다른 타입 사이에 변환하는 작업을 말한다.
자바의 형 변환은 기본 자료형과 참조 자료형 모두 괄호로 묶어주면 된다. 하지만 boolean 타입은 형변환이 되지 않는다.
바이트 크기가 커지는 형변환을 할 경우에는 별도 해줄 것이 없다.
하지만 바이트 크기가 작아지는 형변환을 할 경우에는 앞의 바이트를 버려버리기 때문에 데이터 손실이 일어난다.
실수 타입을 정수 타입으로 강제 타입 변환하면 소수점 이하의 데이터들이 버려진다.
byte → short, char → int → long → float → double
4. 타입 별 사용 가능한 연산자
구분 | 연산자 명칭 | 연산자 |
결과가 boolean인 경우 | 숫자 비교 연산자 | <, <=, >, >= |
숫자 동등 연산자 | ==, != | |
결과가 int나 long인 경우 | 기본 사칙 연산자 | +, -, *, /, % |
증감 연산자 | ++, -- | |
비트 연산자 | &, | |
기타 연산자 | 삼항 연산자 | ? : |
형 변환 연산자 | (타입) | |
문자열 더하기 연산자 | + |
💡 정수형
자바에서 제공하는 모든 연산자를 사용할 수 있다.
💡 소수형
비트 연산이 불가능하다.
💡 boolean
구분 | 연산자 |
동등 연산자 | ==, != |
조건적 논리 연산자 | &&, |
논리 연산자 | !, &, |
삼항 연산자 | ? : |
문자열 더하기 연산자 | + |
정리해보자.
책에 있는 질문에 대한 나의 정답을 적은 것이다.
: 네
'ON > 개발지식' 카테고리의 다른 글
[책리뷰] 자바의 신 3판 - 7장. 여러 데이터를 하나에 넣을 수는 없을까요? (0) | 2023.12.08 |
---|---|
[책리뷰] 자바의 신 3판 - 6장. 제가 조건을 좀 따져요 (1) | 2023.12.07 |
[책리뷰] 자바의 신 3판 - 4장.정보를 어디에 넣고 싶은데 (0) | 2023.12.04 |
[책리뷰] 자바의 신 3판 - 3장.자바를 제대로 알려면 객체가 무엇인지를 알아야 해요 (1) | 2023.12.04 |
[책리뷰] 자바의 신 3판 - 2장.Hello God Of Java (0) | 2023.12.02 |
들어가기 전
해당 내용은 자바의 신 3판을 읽고 내용 정리 및 공부한 내용을 정리한 글입니다!
자바의 신 Vol 1: 기초 문법편 | 이상민 - 교보문고
자바의 신 Vol 1: 기초 문법편 | 현장 전문가가 쓴 자바 기초 입문서다. NAVER, NHN, SKPlanet 등에서 성능 전문가의 풍부한 경험을 바탕으로 자바를 실무에 맞게 제대로 쓸 줄 알게 해주는 입문서를 목
product.kyobobook.co.kr
5장.계산을 하고 싶어요
1. 연산자
기본 자료형을 제외한 참조 자료형은 항상 예외가 되는 String 이라는 클래스만이 + 연산이 가능하다.
다시 말해서 계산을 위한 산술 연산자는 기본 자료형 중에서 boolean을 제외한 나머지 타입에서 사용할 수 있다.
2. 연산자의 종류
(1) 대입연산자 =
(2) 산술연산자 + - * / %
▪ / : 나누기를 할때에는 타입을 float 나 double형으로 변경해야지만 소수형으로 결과가 나온다.
▪ % : 나누기를 한 후 나머지를 확인할 수 있는데, 어떤 값이 N의 배수인지 확인하고 싶을 때 사용 가능하다.
(3) 복합대입연산자 += -= *= /= %=
(4) 단항 연산자 + - ++ -- !
▪ + : 변수 x (1)을 의미하며 양수를 의미 하지만 굳이 쓸 필요는 없다.
▪ - : 변수 x (-1)을 의미하며 음수를 의미한다.
▪ ++ : 1만큼 증가
▪ -- : 1만큼 감소
👾 ++2 vs 2++ --2 vs 2-- 차이점
public void increment(){
int intValue = 1;
System.out.println(intValue++);
System.out.println(intValue);
System.out.println(++intValue);
}
출력결과
1 : 수행하여 결과를 출력한 후 1를 더함
2 : 출력문 그대로 출력
3 : 출력문 수행하기 전 1를 더함
(5) 논리부정연산자 !
▪ boolean 타입만 이연산자를 사용할 수 있다.
(6) 비교연산자
▪ 모든 비교 연산자의 결과는 반드시 boolean이다. 해당 조건이 맞으면 true 이고 그렇지 않으면 false가 된다.
① 등가 비교 연산자 == !=
▪ == : 두개의 값이 같으면 true
▪ != : 두개의 값이 같지 않으면 true
💡 기본 자료형과 참조자료형, 즉 모든 타입에서 사용할 수 있다.
char charVal = 'a';
int intVal = 1;
double dobelVal - 1.0;
System.out.println(97 == charVal); // true
System.out.println(intval == doubleVal); // true
// 아스키코드 97 = 'a'이기 때문에 true 가 출력
// 같은 숫자형은 int와 double도 true 가 출력
② 대소 비교 연산자 < > <= >=
▪ < : 두개의 값이 같으면 true
▪ > : 두개의 값이 같지 않으면 true
▪ <= : 두개의 값이 같지 않으면 true
▪ >= : 두개의 값이 같지 않으면 true
💡 boolean이나 참조자료형에서는 사용할 수 없다.
③ 논리 연산자 && ||
▪ && : AND 결합으로 두 값이 모두 true 일 경우에만 true
▪ || : OR 결합으로 두 값이 서로 다를 경우에만 true이거나 false이면 false
④ 삼항 연산자 ? :
▪ 변수 = 조건식 ? true 값 : false 값
3. 형 변환
서로 다른 타입 사이에 변환하는 작업을 말한다.
자바의 형 변환은 기본 자료형과 참조 자료형 모두 괄호로 묶어주면 된다. 하지만 boolean 타입은 형변환이 되지 않는다.
바이트 크기가 커지는 형변환을 할 경우에는 별도 해줄 것이 없다.
하지만 바이트 크기가 작아지는 형변환을 할 경우에는 앞의 바이트를 버려버리기 때문에 데이터 손실이 일어난다.
실수 타입을 정수 타입으로 강제 타입 변환하면 소수점 이하의 데이터들이 버려진다.
byte → short, char → int → long → float → double
4. 타입 별 사용 가능한 연산자
구분 | 연산자 명칭 | 연산자 |
결과가 boolean인 경우 | 숫자 비교 연산자 | <, <=, >, >= |
숫자 동등 연산자 | ==, != | |
결과가 int나 long인 경우 | 기본 사칙 연산자 | +, -, *, /, % |
증감 연산자 | ++, -- | |
비트 연산자 | &, | |
기타 연산자 | 삼항 연산자 | ? : |
형 변환 연산자 | (타입) | |
문자열 더하기 연산자 | + |
💡 정수형
자바에서 제공하는 모든 연산자를 사용할 수 있다.
💡 소수형
비트 연산이 불가능하다.
💡 boolean
구분 | 연산자 |
동등 연산자 | ==, != |
조건적 논리 연산자 | &&, |
논리 연산자 | !, &, |
삼항 연산자 | ? : |
문자열 더하기 연산자 | + |
정리해보자.
책에 있는 질문에 대한 나의 정답을 적은 것이다.
: 네
'ON > 개발지식' 카테고리의 다른 글
[책리뷰] 자바의 신 3판 - 7장. 여러 데이터를 하나에 넣을 수는 없을까요? (0) | 2023.12.08 |
---|---|
[책리뷰] 자바의 신 3판 - 6장. 제가 조건을 좀 따져요 (1) | 2023.12.07 |
[책리뷰] 자바의 신 3판 - 4장.정보를 어디에 넣고 싶은데 (0) | 2023.12.04 |
[책리뷰] 자바의 신 3판 - 3장.자바를 제대로 알려면 객체가 무엇인지를 알아야 해요 (1) | 2023.12.04 |
[책리뷰] 자바의 신 3판 - 2장.Hello God Of Java (0) | 2023.12.02 |