-
형변환(Casting)Java/Basic 2022. 10. 8. 13:30
RANK
- 소수형이 정수형보다 강하기 때문에(rank가 높기 때문에) 소수형과 정수형의 간의 연산에는 소수형 결과값이 나온다
- Rank가 위에서 아래로 갈 수록 높으며, 기준은 자료형이 가질 수 있는 값의 범위
바꾸고자 하는 형(to)이 기존의 형(from)보다 넓은 데이터를 담을 수 있는 자료형일 경우 특별한 처리 없이 형을 변환 import java.util.ArrayList; import java.util.Arrays; import java.util.*; public class Main{ public static void main(String[] args) { int a = 36; double b = a; // int to double short c= 17; long d = c; // short to long float e = 3.14f; double f = e; // float to double } }
형변환(Type Casting)
public class Main{ public static void main(String[] args) { int a = 3; double b = (double) a; System.out.println(b); // int >> double long c = (long) a; System.out.println(c); // ing >> long } }
// 더 큰 랭크의 값을 더 작은 랭크의 변수로 바꾸기 public class Main{ public static void main(String[] args) { double pi = 3.14; int myInt = (int) pi; // double >> int System.out.println(myInt); } }
문자 -> 숫자
1. String to Int
- 자바 Integer클래스의 parseInt함수와 valueOf 함수로 변환
--Integer.paseInt(String값) --Integer.valueOf(String값) public class Main{ public static void main(String[] args) { String s_num = "10"; int i_num = Integer.parseInt(s_num); int i_num2 = Integer.valueOf(s_num); } }
2. String to Double, Float
- 자바 Long, Double, Float 클래스의 parseLong함수와 valueOf 함수로 변환
--Double.valueOf(String값) --Float.valueOf(String값) public class Main{ public static void main(String[] args) { String s_num = "10"; double d_num = Double.valueOf(s_num); float f_num = Float.valueOf(s_num); } }
3. String to Long, Short
- 자바 Long, Short 클래스의 parseLong함수와 parseShort 함수로 변환
--Long.parseLong(String값) --Short.parseShort(String값) String s_num = "10"; long l_num = Long.parseLong(s_num); --String -> Long short sh_num = Short.parseShort(s_num); --String -> Short
숫자 -> 문자
1. Int to String
- 자바 String클래스의 valueOf, toString 함수로 변환
--String.valueOf(Int값) --Integer.toString(Int값) int i_num = 10; String s_num; s_num = String.valueOf(i_num); --문자 -> 숫자 1번방식 s_num = Integer.toString(i_num); --문자 -> 숫자 2번방식 s_num = ""+i_num; --문자 -> 숫자 3번방식
2. Double Float to String
- 자바 String클래스의 valueOf, toString 함수로 변환
--String.valueOf(Float값,Double값) --Float.toString(Float값,Double값) float f_num = 10.10; double d_num = 10.10; String s_num; s_num = String.valueOf(f_num); --Float -> String 1번방식 s_num = Float.toString(f_num); --Float -> String 2번방식 s_num = String.valueOf(d_num); --Double -> String 1번방식 s_num = Double.toString(d_num); --Double -> String 2번방식
정수 <-> 실수
1. Double, Float to Int
double d_num = 10.101010; float f_num = 10.1010; int number1 = (int) d_num; int number2 = (int) f_num;
2. Int to Double, Float
int i_number = 100; double d_num = (double) i_number; float f_num = (float) i_number;
// 실습 => 평균구하기 public class Main{ public static void main(String[] args) { int koreanScore = 86; int mathScore = 94; int scienceScore = 87; int computerScore = 100; double average = (double)(koreanScore + mathScore + scienceScore + computerScore) / 4; System.out.println(average); } }
'Java > Basic' 카테고리의 다른 글
== 와 eqauls 차이 (0) 2022.10.23 스캐너(Scanner) (0) 2022.10.14 배열(Array) (0) 2022.09.10 반복문(while & For) (0) 2022.09.03 Introduction to JavaProgramming (0) 2022.08.21