본문 바로가기
버킷리스트/앱 만들기

오공완(풀스택 개발이 쉬워지는 다트&플러터) #B-10 List를 이용하여 복수 데이터 처리하기

by 또또도전 2024. 11. 21.
반응형

// 이곳에 쓴 내용은 앱 만들기라는 버킷리스트를 달성하기 위해 플러터를 공부하면서 정리하고 있는 내용입니다.

플러터에 대해 아는 것이 거의 없기 때문에 정리하면서 오류가 있을 수 있습니다.

오류를 발견하신 분은 댓글 남겨 주시면 감사하겠습니다.

 

<List 기능>

기능 의미
length 항목의 개수 계산
first 첫번째 항목
last 마지막 항목
indexOf 특정 위치의 항목을 확인
insert 특정 위치에 새로운 항목 추가
add 끝에 새로운 항목 추가
addAll 리스트의 끝에 모든 항목 추가
sort 항목을 순서대로 정렬
clear 모든 항목 삭제

 

 

  - 이해가 안 되는 부분이 indexOf(3)이다. 값이 2가 출력되었다. 책에서 설명하길, iList 3은 세번째, 숫자 인덱스로 계산하면 (처음인 0번째에서 시작하여) 두 번째 인덱스 위치에 있으므로, 숫자 2가 출력되었단다. 나는 세 번째 숫자가 뭐야? 하는 질문인 줄 알았는데, 3은 몇 번째야? 라는 질문인 거 같다.

그래서 몇 개를 추가해 봤다. 없는 값을 말했더니 -1로 나오는 것이 신기하다.
insert는 주어진 2값 뒤에 99가 추가된다.
add는 리스트 마지막에 값이 추가된다.

 

addAll로 여러 값을 추가할 수 있다.
sort만 이용하며 안 될까?
된다. 아마도 책에서는 compareTo()를 쓰면 더 많은 기능을 수행할 수 있기 때문에 쓴 것 같다.
clear로 리스트 안에 모든 값 삭제
리스트는 정수, 실수, 문자열 타입을 한 번에 저장할 수 있다.
for 반복문을 사용했다.

  - 배운 지 얼마 안 되는대도 어렵다. 무슨 느낌인지는 알겠다.

이건 도저히 이해가 안 된다. item 변수 안에 리스트 값이 어떻게 하나씩 저장되는 것인지 이해는 안 된다.



List를 만들 때 <int> 처럼 타입을 지정해 줄 수 있다고 한다.

  - <int>처럼 변수 타입을 지정하지 않을 때는 dynamic으로 인식한다고..한다.

 

List 클래스 다트 공식 설명

https://api.dart.dev/dart-core/List-class.html

 

List class - dart:core library - Dart API

An indexable collection of objects with a length. Subclasses of this class implement different kinds of lists. The most common kinds of lists are: Fixed-length list An error occurs when attempting to use operations that can change the length of the list. G

api.dart.dev

 

이건 compareTo 메서드 설명 주소인데, 딱히 중요한 정보는 보이지 않는다.

https://api.dart.dev/dart-core/Comparable/compareTo.html

 

compareTo method - Comparable class - dart:core library - Dart API

int compareTo( T other ) Compares this object to another object. Returns a value like a Comparator when comparing this to other. That is, it returns a negative integer if this is ordered before other, a positive integer if this is ordered after other, and

api.dart.dev

 

반응형