리스트 배열의 경우 불변성으로 인해 동적으로 변하는 자료형에는 어울리지 않는다. 이런 단점을 보완하고자 리스트 클래스가 만들어졌고 이 경우에는 가변성으로 메모리가 허용하는 선까지 값을 계속 추가할 수 있다. 예제로 알아보기 https://school.programmers.co.kr/learn/courses/30/lessons/181920 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해당 문제를 배열과 리스트 두 가지 방법을 사용해 해결해보겠다. 배열 import java.util.*; class Solution { public static int[] solut.. 2024. 2. 12. 람다식의 스트림 함수 일반적으로 람다식은 익명 함수라고도 불린다. 일반적으로 함수는 이름이 존재하는데 람다식에는 존재하지 않는다. 코드로써 일반 함수와 람다식을 비교하면 다음과 같다. // 일반함수식 public int sum(int x, int y) { return x + y; } // 람다식 (x, y) -> x + y 일반 함수식에는 sum이라는 메소드명이 있지만 람다식에는 함수명이 존재하지 않는다. 자바에서는 스트림이 람다식으로 표현한다. 람다식에는 여러 스트림 함수가 존재하는데 통상 자주 사용되는 3가지 정도만 정리해보려고 한다. Filter 특정 조건을 만족하는 데이터만 걸러내는데 사용된다. import java.util.Arrays; public class Main { public static void main(.. 2024. 2. 12. 람다식 사용하기 람다식에 대한 정의는 다른 기술 블로그를 찾아보는 것을 권장한다. 람다식이 아닌 경우 class Solution { public int[] solution(int[] arr) { for (int i = 0; i = 50 && arr[i] % 2 == 0) { arr[i] = (int) arr[i] / 2; } else if (arr[i] < 50 && arr[i] % 2 != 0) { arr[i] = arr[i] * 2; } else { continue; } } return arr; } } 내부가 풀어써져 있어서 그런데 안의 코드를 약간 함수화하겠다. class Solution { public int[] solution(int[] arr) { i.. 2024. 2. 11. 특정 인덱스에서 배열 슬라이싱하기 방법은 두 가지가 있다. 반복문 사용 import java.util.Arrays; public class Main { public static void main(String[] args) { // ex) 배열의 3번재 값부터 슬라이싱 하기 // {2, 3, 4, 5}가 리턴되어야 한다. int[] arr = {0, 1, 2, 3, 4, 5}; int position = 3; int[] arr_return = new int[arr.length - position + 1]; for (int i = 0; i = position - 1) { arr_return[i - (position - 1)] = arr[i]; } } System.out.println(Arra.. 2024. 2. 11. 이전 1 2 3 다음