class Solution {
public int[] solution(int start, int end) {
int size = end - start + 1;
int[] answer = new int[size];
for (int i = 0; i < size; i++) {
answer[i] = start++;
}
return answer;
}
}
리스트를 return 하라는 함수 였는데
정작 return하라는 건 int[] answer = {}; 배열이네
배열은 사이즈 정해주기 잊지말자
import java.util.*;
class Solution {
public int[] solution(int n) {
//리스트 생성
ArrayList <Integer> al = new ArrayList <> ();
al.add(n);
while(n != 1){
if(n % 2 == 0){
n /= 2;
}
else if(n % 2 != 0){
n = (3 * n + 1);
}
al.add(n);
}
//list사이즈의 배열 생성
int[] answer = new int[al.size()];
//for문을 이용해서 값 넣어주기
for(int i = 0; i < answer.length; i ++){
answer[i] = al.get(i);
}
return answer;
}
}
리스트에서 배열로 바꾸기
import java.util.ArrayList;
class Solution {
public int[] solution(int n) {
ArrayList<Integer> answer = new ArrayList<>();
answer.add(n);
while (n != 1) { // n이 1이 아닌 동안
if (n % 2 == 0) { // n이 짝수면
n /= 2;
} else { // n이 홀수면
n = 3 * n + 1;
}
answer.add(n);
}
return answer.stream().mapToInt(i->i).toArray();
}
}
리스트에서 배열로 바꾸는 다른 방법
stream 이용하기
'공부중 > 혼자공부하는자바' 카테고리의 다른 글
GET/SET 메서드 (0) | 2024.03.15 |
---|---|
프로그래머스 풀다가 만난 array.sort (0) | 2024.02.21 |
코딩테스트 (0) | 2024.02.14 |
자바 동작원리 (0) | 2024.02.02 |
수 조작하기1 switch문사용하기 (0) | 2024.02.01 |
댓글