다트 목록
다트 목록은 개체의 순서가 지정된 컬렉션인 배열과 유사합니다. 배열은 다른 프로그래밍 언어에서 가장 인기 있고 일반적으로 사용되는 컬렉션입니다. Dart 목록은 JavaScript 배열 리터럴처럼 보입니다. 목록을 선언하는 구문은 다음과 같습니다.
var list1 = [10, 15, 20,25,25]
Dart 목록은 대괄호([]) 안에 모든 요소를 저장하고 쉼표(,)로 구분하여 정의됩니다.
목록의 그래픽 표현을 이해해 봅시다.
시트 1 - 그것은 목록 변수 이는 목록 개체를 참조합니다.
색인 - 각 요소에는 목록의 요소 위치를 알려주는 인덱스 번호가 있습니다. 색인 번호는 list_name[index]와 같은 목록의 특정 요소에 액세스하는 데 사용됩니다. 목록 인덱싱은 다음에서 시작됩니다. 0 에게 길이-1 여기서 길이는 목록에 있는 요소의 번호를 나타냅니다. 예를 들어, - 위 목록의 길이는 4입니다.
요소 - 목록 요소는 주어진 목록에 저장된 실제 값 또는 다트 개체를 참조합니다.
목록 유형
Dart 목록은 두 가지 유형으로 분류될 수 있습니다.
- 고정 길이 목록
- 성장 가능한 목록
고정 길이 목록
고정 길이 목록은 지정된 길이로 정의됩니다. 런타임에는 크기를 변경할 수 없습니다. 구문은 아래와 같습니다.
구문 - 고정 크기 목록 생성
var list_name = new List(size)
위 구문은 고정 크기 목록을 만드는 데 사용됩니다. 런타임에는 요소를 추가하거나 삭제할 수 없습니다. 크기를 수정하려고 하면 예외가 발생합니다.
고정 크기 목록 요소를 초기화하는 구문은 다음과 같습니다.
구문 - 고정 크기 목록 요소 초기화
list_name[index] = value;
다음 예를 이해해 봅시다.
예 -
void main() { var list1 = new List(5); list1[0] = 10; list1[1] = 11; list1[2] = 12; list1[3] = 13; list1[4] = 14; print(list1); } 산출:
[10, 11, 12, 13, 14]
설명 -
위의 예에서는 변수를 만들었습니다. 시트 1 고정된 크기의 목록을 말합니다. 목록의 크기는 5이고 인덱스 위치에 해당하는 요소를 삽입했습니다. 일 인덱스는 10, 1을 보유합니다. 성 인덱스는 12를 보유합니다.
성장 가능한 목록
크기를 지정하지 않고 선언되는 목록을 확장 가능 목록이라고 합니다. 확장 가능 목록의 크기는 런타임에 수정될 수 있습니다. Growable 목록 선언의 구문은 다음과 같습니다.
구문 - 목록 선언
// creates a list with values var list_name = [val1, val2, val3] Or // creates a list of the size zero var list_name = new List()
구문 - 목록 초기화
list_name[index] = value;
다음 예를 고려하십시오 -
예시 - 1
void main() { var list1 = [10,11,12,13,14,15]; print(list1); } 산출:
[10, 11, 12, 13, 14, 15]
다음 예에서는 빈 목록을 사용하여 목록을 생성합니다. 목록() 건설자. 그만큼 추가하다() 메소드는 주어진 목록에 요소를 동적으로 추가하는 데 사용됩니다.
예시 - 2
void main() { var list1 = new List(); list1.add(10); list1.add(11); list1.add(12); list1.add(13); print(list1); } 산출:
[10, 11, 12, 13]
목록 속성
아래는 목록의 속성입니다.
| 재산 | 설명 |
|---|---|
| 첫 번째 | 첫 번째 요소 케이스를 반환합니다. |
| 비었다 | 목록이 비어 있으면 true를 반환합니다. |
| 비어 있지 않음 | 목록에 요소가 하나 이상 있으면 true를 반환합니다. |
| 길이 | 목록의 길이를 반환합니다. |
| 마지막 | 목록의 마지막 요소를 반환합니다. |
| 반전 | 목록을 역순으로 반환합니다. |
| 하나의 | 목록에 요소가 하나만 있는지 확인하고 반환합니다. |
목록에 요소 삽입
Dart는 목록에 요소를 삽입하는 데 사용되는 네 가지 방법을 제공합니다. 이러한 방법은 아래에 나와 있습니다.
- 추가하다()
- 모두 추가()
- 끼워 넣다()
- 삽입모두()
add() 메소드
이 메소드는 목록의 끝에 지정된 값을 삽입하는 데 사용됩니다. 한 번에 하나의 요소를 추가하고 수정된 목록 개체를 반환할 수 있습니다. 다음 예를 이해해 봅시다 -
구문 -
list_name.add(element);
예 -
void main() { var odd_list = [1,3,5,7,9]; print(odd_list); odd_list.add(11); print(odd_list); } 산출:
[1, 3, 5, 7, 9] [1, 3, 5, 7, 9, 11]
설명 -
위의 예에는 이름이 지정된 목록이 있습니다. 이상한 목록, 홀수를 보유하고 있습니다. 다음을 사용하여 새 요소 11을 삽입했습니다. 추가하다() 기능. 그만큼 추가하다() 함수는 목록 끝에 요소를 추가하고 수정된 목록을 반환했습니다.
addAll() 메서드
이 메소드는 주어진 목록에 여러 값을 삽입하는 데 사용됩니다. 각 값은 쉼표로 구분되고 대괄호([])로 묶입니다. 구문은 아래와 같습니다.
구문 -
list_name.addAll([val1,val2,val3,?..valN]);
다음 예를 이해해 봅시다 -
void main() { var odd_list = [1,3,5,7,9] print(odd_list); odd_list.addAll([11,13,14]); print(odd_list); } 산출:
[1, 3, 5, 7, 9] [1, 3, 5, 7, 9, 11, 13, 14]
설명 -
위의 예에서는 추가하다() 여러 번 기능합니다. 그만큼 모두 추가() 여러 값을 한 번에 추가하고 수정된 목록 개체를 반환했습니다.
insert() 메서드
그만큼 끼워 넣다() 메소드는 지정된 인덱스 위치에 요소를 삽입하는 기능을 제공합니다. 목록에 삽입할 값의 인덱스 위치를 지정할 수 있습니다. 구문은 아래와 같습니다.
list_name.insert(index,value);
다음 예를 이해해 봅시다 -
void main(){ List lst = [3,4,2,5]; print(lst); lst.insert(2,10); print(lst); } 산출:
[3, 4, 2, 5] [3, 4, 10, 2, 5]
설명 -
위의 예에는 난수 목록이 있습니다. insert() 함수를 호출하고 인덱스 2를 전달했습니다. nd 값 10을 인수로 사용합니다. 2에 값을 추가했습니다. nd 색인을 생성하고 수정된 목록 객체를 반환했습니다.
insertAll() 메서드
insertAll() 함수는 지정된 인덱스 위치에 다중 값을 삽입하는 데 사용됩니다. 인덱스 위치와 값 목록을 인수로 허용합니다. 구문은 아래와 같습니다.
구문 -
list_name.insertAll(index, iterable_list_of_value)
다음 예를 이해해 봅시다 -
예 -
void main(){ List lst = [3,4,2,5]; print(lst); lst.insertAll(0,[6,7,10,9]); print(lst); } 산출:
[3, 4, 2, 5] [6, 7, 10, 9, 3, 4, 2, 5]
설명 -
위의 예에서는 0에 값 목록을 추가했습니다. 일 인덱스 위치를 사용하여 삽입모두() 기능. 수정된 목록 개체를 반환했습니다.
목록 업데이트 중
Dart는 목록을 업데이트하는 기능을 제공하며 간단히 해당 요소에 액세스하고 새 값을 할당하여 목록을 수정할 수 있습니다. 구문은 아래와 같습니다.
구문 -
list_name[index] = new_value;
다음 예를 이해해 봅시다 -
예 -
void main(){ var list1 = [10,15,20,25,30]; print('List before updation: ${list1}'); list1[3] = 55; print('List after updation:${list1}'); } 산출:
List before updation: [10, 15, 20, 25, 30] List after updation: [10, 15, 20, 55, 30]
설명 -
위의 예에서는 3에 액세스했습니다. rd 색인을 생성하고 새 값 55를 할당한 다음 결과를 인쇄했습니다. 이전 목록은 새 값 55로 업데이트되었습니다.
교체범위() - 다트가 제공하는 교체범위() 주어진 목록 항목 범위 내에서 업데이트하는 데 사용되는 함수입니다. 지정된 범위의 요소 값을 업데이트합니다. 구문은 아래와 같습니다.
구문 -
list_name.replaceRange(int start_val, int end_val, iterable);
다음 예를 이해해 봅시다 -
예 -
void main(){ var list1 = [10,15,20,25,30]; print('List before updation: ${list1}'); list1.replaceRange(0,4,[1,2,3,4]) ; print('List after updation using replaceAll() function : ${list1}'); } 산출:
List before updation: [10, 15, 20, 25, 30] List after updation using replaceAll() function : [1, 2, 3, 4, 30]
설명 -
위의 예에서는 교체범위() 세 가지 인수를 허용하는 목록으로 이동합니다. 시작 인덱스 0을 전달했습니다. 일 , 끝 인덱스 4 및 교체할 요소 목록을 세 번째 인수로 사용합니다. 주어진 범위에서 대체된 요소가 포함된 새 목록을 반환했습니다.
목록 요소 제거
Dart는 목록 요소를 제거하기 위해 다음 기능을 제공합니다.
- 제거하다()
- 제거()
- 제거마지막()
- 제거범위()
제거() 메서드
주어진 목록에서 한 번에 하나의 요소를 제거합니다. 요소를 인수로 허용합니다. 동일한 요소가 여러 개 있는 경우 목록에서 지정된 요소의 첫 번째 항목을 제거합니다. 구문은 아래와 같습니다.
구문 -
list_name.remove(value)
다음 예를 이해해 봅시다 -
예 -
void main(){ var list1 = [10,15,20,25,30]; print('List before remove element : ${list1}'); list1.remove(20) ; print('List after removing element : ${list1}'); } 산출:
List before remove element : [10, 15, 20, 25, 30] List after removing element : [10, 15, 25, 30]
설명 -
위의 예에서는 제거하다() 함수를 목록에 추가하고 값 20을 인수로 전달했습니다. 주어진 목록에서 20개를 제거하고 새로 수정된 목록을 반환했습니다.
RemoveAt() 메서드
지정된 인덱스 위치에서 요소를 제거하고 반환합니다. 구문은 아래와 같습니다.
구문 -
list_name.removeAt(int index)
예 -
void main(){ var list1 = [10,11,12,13,14]; print('List before remove element : ${list1}'); list1.removeAt(3) ; print('List after removing element : ${list1}'); } 산출:
List before remove element : [10, 11, 12, 13, 14] List after removing element : [10, 11, 12, 14]
설명 -
위의 예에서는 3을 통과했습니다. rd 인수로 인덱스 위치 제거() 함수를 실행하고 목록에서 요소 13을 제거했습니다.
RemoveLast() 메서드
RemoveLast() 메소드는 주어진 목록에서 마지막 요소를 제거하는 데 사용됩니다. 구문은 아래와 같습니다.
통사론-
list_name.removeLast()
다음 예를 이해해 봅시다.
예 -
void main(){ var list1 = [12,34,65,76,80]; print('List before removing element:${list1}'); list1.removeLast(); print('List after removed element:${list1}'); } 산출:
List before removing element:[12, 34, 65, 76, 80] List after removed element:[12, 34, 65, 76]
위의 예에서는 마지막 요소를 제거하고 반환하는 RemoveLast() 메서드를 호출했습니다. 80 주어진 목록에서.
RemoveRange() 메서드
이 메서드는 지정된 범위 내의 항목을 제거합니다. 두 가지 인수를 허용합니다. 인덱스 시작 그리고 끝 인덱스. 지정된 범위 사이에 있는 모든 요소를 제거합니다. 구문은 아래와 같습니다.
구문 -
list_name. removeRange();
예 -
void main(){ var list1 = [12,34,65,76,80]; print('List before removing element:${list1}'); list1.removeRange(1,3); print('List after removed element:${list1}'); } 산출:
List before removing element:[12, 34, 65, 76, 80] List after removed element:[12, 76, 80]
설명 -
위의 예에서는 제거범위() 메서드를 실행하고 시작 인덱스 위치 1과 끝 인덱스 위치 3을 인수로 전달했습니다. 지정된 위치 사이에 속한 모든 요소를 제거했습니다.
다트 반복 목록 요소
다트 목록은 다음을 사용하여 반복될 수 있습니다. 각각 방법. 다음 예를 살펴보겠습니다.
예 -
void main(){ var list1 = ['Smith','Peter','Handscomb','Devansh','Cruise']; print('Iterating the List Element'); list1.forEach((item){ print('${list1.indexOf(item)}: $item'); }); } 산출:
Iterating the List Element 0: Smith 1: Peter 2: Handscomb 3: Devansh 4: Cruise