Java에서 이미 초기화 된 배열 목록에 여러 항목 추가
인터넷 검색 중이며 구문을 찾을 수없는 것 같습니다. 내이 arraylist내가 그것을 초기화했습니다 있도록 채워 다르게, 사용자의 설정에 따라 수 있습니다
ArrayList<Integer> arList = new ArrayList<Integer>();
그리고 이제는 하나 하나하지 않고 수백 개의 정수를 더하고 싶습니다. arList.add(55);
추가하려는 모든 항목이 포함 된 다른 목록이 있으면 할 수 있습니다 arList.addAll(otherList). 또는 항상 동일한 요소를 목록에 추가하는 경우 모든 값을 포함하도록 초기화 된 새 목록을 만들고 addAll()다음과 같은 방법으로 메서드를 사용할 수 있습니다.
Integer[] otherList = new Integer[] {1, 2, 3, 4, 5};
arList.addAll(Arrays.asList(otherList));
또는 불필요한 배열을 만들고 싶지 않은 경우 :
arList.addAll(Arrays.asList(1, 2, 3, 4, 5));
그렇지 않으면 목록에 개별적으로 값을 추가하는 일종의 루프가 있어야합니다.
그 정수의 "원본"은 무엇입니까? 소스 코드에 하드 코딩해야하는 경우 다음을 수행 할 수 있습니다.
arList.addAll(Arrays.asList(1,1,2,3,5,8,13,21));
Collections.addAll 하나의 명령문으로 컬렉션에 원하는 수의 항목을 추가 할 수있는 varargs 메서드입니다.
List<Integer> list = new ArrayList<>();
Collections.addAll(list, 1, 2, 3, 4, 5);
컬렉션에 배열 요소를 추가하는데도 사용할 수 있습니다.
Integer[] arr = ...;
Collections.addAll(list, arr);
공간을 절약하기 위해 여러 코드 줄을 피하려는 경우 다음 구문이 유용 할 수 있습니다.
java.util.ArrayList lisFieldNames = new ArrayList() {
{
add("value1");
add("value2");
}
};
새 줄을 제거하면 다음과 같이 압축되어 표시 할 수 있습니다.
java.util.ArrayList lisFieldNames = new ArrayList() {
{
add("value1"); add("value2"); (...);
}
};
많은 정수를 추가해야한다면 for 루프를 사용하는 것이 가장 쉬울 것입니다. 예를 들어 daysInFebruary 배열에 28 일을 추가합니다.
ArrayList<Integer> daysInFebruary = new ArrayList<>();
for(int i = 1; i <= 28; i++) {
daysInFebruary.add(i);
}
위의 대답이 잘못되었다고 생각합니다. 여러 값으로 초기화하는 적절한 방법은 다음과 같습니다.
int[] otherList ={1,2,3,4,5};
따라서 적절한 초기화에 대한 전체 답변은 다음과 같습니다.
int[] otherList ={1,2,3,4,5};
arList.addAll(Arrays.asList(otherList));
'program story' 카테고리의 다른 글
| 형식에 호출 서명이없는 식을 호출 할 수 없습니다. (0) | 2020.11.25 |
|---|---|
| 파이썬에서 numpy를 사용하여 자연 로그 (예 : "ln ()")를 어떻게 수행합니까? (0) | 2020.11.24 |
| Go에서 OS / 플랫폼을 안정적으로 감지하는 방법 (0) | 2020.11.24 |
| 생성자 주입이 다른 옵션보다 나은 이유 설명 (0) | 2020.11.24 |
| Elixir에서 셸 명령 실행 (0) | 2020.11.24 |