자바로 배열의 값을 더하고 합치는 방법 및 자르는 방법을 정리하였습니다.
배열 값 더하는 방법
배열의 값들을 모두 더하는 방법은 다음과 같습니다.
반복문 사용
반복문을 사용하여 값을 모두 더하는 방법입니다.
// 숫자 배열 요소를 모두 더하는 방법
int[] numbers = {1, 2, 3, 4, 5};
int sum = 0;
for (int num : numbers) { // 향상된 for문 사용
sum += num;
}
System.out.println("배열의 합: " + sum);
// 문자열 배열 요소를 모두 더하는 방법
String[] strings = {"Hello", "World", "Java"};
String result = "";
for (String str : strings) {
result += str + " ";
}
System.out.println("문자열 배열의 합: " + result);
Stream 사용
Arrays.stream() 메소드를 사용할 수도 있습니다.
// Arrays.stream() 메소드를 사용하여 배열 요소를 모두 더하는 방법
int sumOfNumbers = Arrays.stream(numbers).sum();
System.out.println("배열의 합: " + sumOfNumbers);
String sumOfStrings = Arrays.stream(strings).reduce("", (a, b) -> a + b);
System.out.println("문자열 배열의 합: " + sumOfStrings);
배열 자르는 방법(부분 배열을 만드는 방법)
배열을 잘라서 부분 배열을 만드는 방법입니다.
배열을 자를 때는 Arrays.copyOfRange 메소드를 사용하면 됩니다.
int[] numbers = {1, 2, 3, 4, 5};
int[] subArray = Arrays.copyOfRange(numbers, 1, 4); // 인덱스 1부터 4전까지 자름 (즉, {2, 3, 4})
System.out.println("잘린 배열: " + Arrays.toString(subArray));
여러 배열을 합치는 방법
두개의 배열을 하나로 합치기 위해 System.arraycopy나 Stream.concat 메소드를 사용할 수 있습니다.
System.copyOfRange 사용
// 배열을 합치는 방법
int[] arr1 = {1, 2, 3};
int[] arr2 = {4, 5, 6};
int[] mergedArray = new int[arr1.length + arr2.length];
System.arraycopy(arr1, 0, mergedArray, 0, arr1.length);
System.arraycopy(arr2, 0, mergedArray, arr1.length, arr2.length);
System.out.println("합쳐진 배열: " + Arrays.toString(mergedArray));
Stream.concat 사용
int[] arr1 = {1, 2, 3};
int[] arr2 = {4, 5, 6};
int[] mergedArrayFromStream = IntStream.concat(Arrays.stream(arr1), Arrays.stream(arr2)).toArray();
System.out.println("합쳐진 배열: " + Arrays.toString(mergedArrayFromStream));
결과는 System.copyOfRange와 동일합니다.