-
[Java] String Array -> int Array 로 변환하는 방법리뷰노트/Java 2022. 8. 10. 16:36
String Array 에서 int Array 로 변환하는 방법 2가지
1. stream API
JAVA 8 부터는 객체 생성의 역할을 하는 클래스 메소드인 정적 팩토리 메소드를 사용할 수 있습니다.
우선 string Type의 Array인 stringArray를 각 정수형으로 변환 후 다시 Array로 변환하여
int Type의 Array인 intArray에 넣으면 됩니다.public class Main { public static void main(String[] args) { String[] stringArray = { "1", "2", "3", "4", "5"}; int[] intArray = Arrays.stream(stringArray) .mapToInt(Integer::parseInt) .toArray(); System.out.println(Arrays.toString(intArray)); } }
결과 : [1,2,3,4,5]
만약 Integer.parseInt() 가 숫자 형태로 변환 시 NumberFormatException 이 발생할 경우 Stream.of()을 사용
import java.util.Arrays; import java.util.stream.Stream; public class Main { public static void main(String[] args) { String[] stringArray = { "1", "2", "3", "4", "5"}; int[] intArray = Stream.of(stringArray) .mapToInt(Integer::parseInt) .toArray(); System.out.println(Arrays.toString(intArray)); } }
결과 : [1,2,3,4,5]
2. stream API를 안쓸 경우
- stringArray의 각 요소를 정수로 변환 후 int Type의 Array인 intArray 에 넣습니다.import java.util.Arrays; public class Main { public static void main(String[] args) { String[] stringArray = {"1", "2", "3", "4", "5"}; int[] intArray = new int[stringArray.length]; for (int i = 0; i < stringArray.length; i++) { intArray[i] = Integer.parseInt(stringArray[i]); } System.out.println(Arrays.toString(intArray)); } }
결과 : [1,2,3,4,5]
이렇게 위에 두가지 방법은 결과가 같습니다.
'리뷰노트 > Java' 카테고리의 다른 글
[Java]짧게 훑어보는 Java 간단 지식(오버라이딩&오버로딩, 추상클래스, 인터페이스, SOLID-객체지향의 설계원칙) (0) 2023.11.29 [Java]짧게 훑어보는 Java 간단 지식(Java란, 컴파일 과정, JVM, GC, 메모리 영역) (0) 2023.11.21 [JAVA] interface(인터페이스) 와 abstract class(추상클래스) (0) 2023.01.31