Jindory
Jindory의 기록 라이프
Jindory
전체 방문자
오늘
어제
07-05 10:33
  • 분류 전체보기
    • 개발
      • AI
      • Java
      • Javascript
      • JPA
      • Python
      • Spring
      • Web
    • 데이터베이스
      • Database
      • Oracle
      • MySQL
    • 코딩테스트
      • 구름IDE
      • 백준
      • 코딩테스트 준비
      • 프로그래머스
    • 분석 및 설계
      • Design Pattern
      • UML
    • 트러블슈팅
      • Java
      • JPA
      • Spring
    • 개발 커리어
      • 면접
      • 멘토링
      • 포트폴리오
      • 프로젝트

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

최근 댓글

최근 글

티스토리

250x250
hELLO · Designed By 정상우.
Jindory

Jindory의 기록 라이프

[Java] 자료형간의 형변환(문자형,정수형,실수형)
개발/Java

[Java] 자료형간의 형변환(문자형,정수형,실수형)

2022. 3. 3. 00:28
반응형
  • 오늘은 자료형 간의 형변환과 관련된 글을 작성해보려고 합니다.

형변환이란?

변수나 리터럴의 타입을 다른 타입으로 변환하는것을 '형변환(casting)'이라고 합니다.

Java에서 코딩을 하다보면 어떤 변수형을 다른 변수형으로 강제 치환해야하는 경우가 다수 발생하여 형변환에 대한 예시를 설명하도록 하겠습니다.

 

  • 문자 -> 숫자
    • String to Int
    • String to Double, Float
    • String to Long, Short
  • 숫자 -> 문자
    • Int to String
    • Double Float to String
  • 정수 <-> 실수
    • Double, Float to Int
    • Int to Double, Float

[ 문자 -> 숫자 ]

String to Int

자바의 Integer클래스의 parseInt 함수와 valueOf 함수로 String을 Int로 변환 시켜줄 수 있습니다.

 

-- Integer.parseInt(String 값)

String fromString = "123";
int toInt1 = Integer.parseInt(fromString);
System.out.println("toInt1:"+toInt1);

// toInt1:123

String to Double, Float

자버의 Long, Double, Float 클래스의 parseDouble,parseFloat 함수와 valueOf 함수로 String을 Double, Float로 변환 시킬 수 있다.

-- Double.parseDouble(String 값)
-- Float.parseFloat(String 값)

String fromString = "125";
double toDouble1 = Double.parseDouble(fromString);
float toFloat1 = Float.parseFloat(fromString);
System.out.println("toDouble1:"+toDouble1);
System.out.println("toFloat1:"+toFloat1);

// toDouble1:125.0
// toFloat1:125.0

String to Long, Short

자바 Long, Short 클래스의 parseLong,parseShort 함수와 valueOf 함수로 변환 시켜줄 수 있다.

-- Long.parseLong(String 값)
-- Short.parseShort(String 값)

String fromString = "127";
long toLong1 = Long.parseLong(fromString);
short toShort1 = Short.parseShort(fromString);
System.out.println("toLong1:"+toLong1);
System.out.println("toShort1:"+toShort1);

// toLong1:127
// toShort1:127

String에서 Int, Double, Float, Long, Short의 valueOf를 사용하면 각 자료형으로 변환이 가능하다.

-- Integer,Double,Float,Long,Short.valueOf(String 값)

String fromString = "123";
int toInt = Integer.valueOf(fromString);
double toDouble = Double.valueOf(fromString);
float toFloat = Float.valueOf(fromString);
long toLong = Long.valueOf(fromString);
short toShort = Short.valueOf(fromString);

System.out.println("toInt:"+toInt);
System.out.println("toDouble:"+toDouble);
System.out.println("toFloat:"+toFloat);
System.out.println("toLong:"+toLong);
System.out.println("toShort:"+toShort);

// toInt:123
// toDouble:123.0
// toFloat:123.0
// toLong:123
// toShort:123

[ 숫자 -> 문자 ]

Int to String

자바 Integer클래스의 toString 함수를 사용하여 숫자를 String으로 변환 할 수 있다.

int fromInt = 123;
String toString = Integer.toString(fromInt);
System.out.println("toString:"+toString);

Double Float to String

자바 Double, Float의 toString 함수를 사용하여 실수를 String으로 변환 할 수 있다.

// Double.toString(String 값)
// Float.toString(String 값)

double fromDouble = 10.15;
float fromFloat = (float) 3.14;

String toString1 = Double.toString(fromDouble);
String toString2 = Float.toString(fromFloat);
System.out.println("toString1:"+toString1);
System.out.println("toString2:"+toString2);

// toString1:10.15
// toString2:3.14

숫자형에서 문자형으로 형변환할때와 마찬가지고 String.valueOf(숫자)를 통해 숫자형에서 문자형으로 변환이 가능하다.

// String.valueOf(숫자형)

int fromInt = 123;
double fromDouble = 10.15;
float fromFloat = (float) 3.14;

String toString1 = String.valueOf(fromInt);
String toString2 = String.valueOf(fromDouble);
String toString3 = String.valueOf(fromFloat);
System.out.println("toString1:"+toString1);
System.out.println("toString2:"+toString2);
System.out.println("toString3:"+toString3);

// toString1:123
// toString2:10.15
// toString3:3.14

[ 정수형 <-> 실수형 ]

정수형과 실수형을 변환하는 방법은 변환하고자 하는 변수 앞에 변경하고 싶은 자료형을 캐스팅 하여 변환 할 수 있다.

double fromIntToDouble = (double) fromInt;
float fromIntToFloat =  (float) fromInt;
float fromDoubleToFloat = (float) fromDouble;
int   fromDoubleToInt   = (int) fromDouble;
int fromFloatToInt		= (int) fromFloat;
double fromFloatToDouble= (double) fromFloat;

System.out.println("Int(%d)->Double(%f)".formatted(fromInt,fromFloatToDouble));
System.out.println("Int(%d)->Float(%f)".formatted(fromInt,fromIntToFloat));
System.out.println("Double(%f)->Float(%f)".formatted(fromDouble,fromDoubleToFloat));
System.out.println("Double(%f)->Int(%d)".formatted(fromDouble,fromDoubleToInt));
System.out.println("Float(%f)->Int(%d)".formatted(fromFloat,fromFloatToInt));
System.out.println("Float(%f)->Double(%f)".formatted(fromFloat,fromFloatToDouble));

// Int(123)->Double(3.140000)
// Int(123)->Float(123.000000)
// Double(10.150000)->Float(10.150000)
// Double(10.150000)->Int(10)
// Float(3.140000)->Int(3)
// Float(3.140000)->Double(3.140000)

 

[ 참조 ]

https://coding-factory.tistory.com/130

반응형
저작자표시 비영리 (새창열림)

'개발 > Java' 카테고리의 다른 글

[Java] Json Array 정렬  (0) 2022.03.06
[Java] SMTP와 Mail 발송  (0) 2022.03.06
[Java] Stream 활용하기[최종연산]  (0) 2022.02.25
[Java] Stream 활용하기[중간연산]  (0) 2022.02.25
[Java] Stream 활용하기[생성하기]  (0) 2022.02.25
    '개발/Java' 카테고리의 다른 글
    • [Java] Json Array 정렬
    • [Java] SMTP와 Mail 발송
    • [Java] Stream 활용하기[최종연산]
    • [Java] Stream 활용하기[중간연산]
    Jindory
    Jindory

    티스토리툴바