일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Oracle
- IntelliJ
- Spring Batch
- it
- Gradle
- 맛집
- 요리
- jenkins
- linux
- laravel
- java
- db
- elasticsearch
- php
- Spring
- Design Patterns
- JVM
- Web Server
- redis
- AWS
- devops
- Spring Boot
- javascript
- Git
- ReactJS
- ubuntu
- jsp
- MySQL
- springboot
- tool
Archives
- Today
- Total
아무거나
형변환(Type Conversion) 본문
반응형
형변환(Type Conversion)
1. 자동 형 변환
- double a = 3.0F; // double 타입이 float 타입보다 더 많은 수를 표현할 수 있기 때문에 에러가 안난다.
- float a = 3.0; // 3.0이 double형 데이터고 a는 float 데이터 이므로 double형 변수를 float에 담으려고 하기 때문에 오류가 난다. 이유는 표현범위가 float < double 이기 때문
(1) 형변환이 일어나는 규칙
byte -> short, char -> int -> long -> float -> double
- byte ~ long는 정수
- float ~ double는 실수
(2) 예제
int a = 3;
float b = 1.0F
double c = a + b; // ???
[풀이]
1. 정수 -> 실수 3.0F + 1.0F = 4.0F
2. c의 데이터 타입은 double형이므로 4.0F가 double형으로 자동 형 변환이되어 double c에 담긴다.
2. 명시적 형 변환
float a = 100.0 // 에러 -> double > float
int b = 100.0F; // 에러 -> 실수를 정수에 데이터로 담으려하니 소수점 데이터가 날아가게 되므로 에러
위의 예제를 수정한 내용
float a = (float)100.0;
int b = (int)100.0F; // 100.0 이 100으로 바뀌게 되면서 int b에 담아진다.
반응형
'Java & Kotlin > Java' 카테고리의 다른 글
비교와 Boolean (0) | 2019.06.17 |
---|---|
연산자(나눗셈, 형변환) (0) | 2019.06.13 |
상수의 데이터 타입 (0) | 2019.06.11 |
데이터 타입 (0) | 2019.06.11 |
@Deprecated 이란 (0) | 2019.06.07 |
Comments