우리가 Wrapper클래스 포스팅에서 메소드를 이용한 여러 타입의 클래스에서 형변환에 대해 알아봤었다.
이번 포스팅에서는 String클래스에서 다른클래스로 또는 다른클래스에서 String클래스로 형변환을 할 때 메소드가 아닌 생성자(Constructor)를 이용하여 형변환하는 법에 대해 알아보도록 하자.
1. byte[] -> String
▲ byte형 배열을 Stirng형으로 형변환해보자. String클래스에서는 생성자의 인자로 byte형 배열을 받으면 그것을 곧 String형 배열로 변환해주는 기능을 가지고 있다.
또한 byte[] 뒤에 시작인덱스와 원하는 갯수를 넣어주면 해당 인덱스부터 원하는 갯수만큼의 데이터를 반환하는 기능도 있다.
▲ byte배열에 있던 숫자데이터들이 String으로 바뀌면서 아스키코드값으로 작용한 것을 볼 수 있다.
1-1. String -> byte[]
▲ String에서 byte형 배열로 바꿀 때는 wrapper클래스 포스팅때도 쓴 getByte()메소드를 사용하면 된다.
▲ 결과적으로 우리가 위에서 출력한 CD가 각각 아스키코드값으로 변환되어서 byte형 배열에 각각 들어간다.
2. char[] -> String
▲ 우리가 wrapper클래스 포스팅에서 char[]을 Strinig으로 바꿀 때는 valueOf()메소드를 이용했었다.
String()생성자를 이용할 때는 byte[]과 동일한 방법으로 char[]을 넣어주면 String형으로 변환된다.
또한 시작 인덱스와 원하는 갯수(길이)까지 지정해주면 해당 인덱스에서 원하는 갯수만큼 문자열로 변환해준다.
▲ 결과는 위와 같다.
2-1. String -> char[]
▲ 문자열을 char[]로 변환하는 방법은 우리가 wrapper클래스 포스팅에서 사용했던 메소드와 동일하게 toCharArry()를 사용하면 된다.
▲ 결과는 위와 같다.
'Java' 카테고리의 다른 글
[Java]Super() - 부모의 기본생성자 (0) | 2022.03.14 |
---|---|
[Java]상속(Inheritance) (0) | 2022.03.14 |
[Java]싱글톤 디자인(Single Tone Design) (0) | 2022.03.14 |
[Java]this() - 자기 자신의 기본생성자 (0) | 2022.03.14 |
[Java]생성자(Constructor) (0) | 2022.03.11 |