[Flutter]Dart 2차원 배열(list, 리스트) 데이터 저장 및 가져오기(List.generate())

2020년 12월 13일 by 진아사랑해

    [Flutter]Dart 2차원 배열(list, 리스트) 데이터 저장 및 가져오기(List.generate()) 목차
반응형

초보자로서 Flutter 앱을 개발하면서 Array(배열) 처리에서 헤매고 있다

많은 강의를 들을 때는 고개를 끄덕이며, 알겠더니 막상 간단한 앱을 만드는데...엄청 헤매고 있다

 

1. List.generate( )를 사용하여 List 생성하기

1) 1차원 리스트(배열) 생성

리스트를 생성하는데 5개의 데이터가 들어가는 리스트이고,

index값이 0 ~ 4(즉 5개인데) 생성되는 리스트에 들어가는 데이터는 index *2의 값이다

 

var myList = List.generate(5, (index) => index * 2)

print(myList);

// 결과

[0, 2, 4, 6, 8]

참고) sysocoder.com/498-2/

 

2) 2차원 리스트(배열) 생성

- list.generate( ) 사용

리스트(배열)을 생성하는데 3개의 방을 만드는데, i는 0 ~2 이고

각 방에 넣는 값은 List 생성자를 사용한 4개의 방을 만든다

즉, i = 0에서 다시 방 4개를 만든다

main() {
int row = 3;
int col = 4;
var twoDList = List.generate(row, (i) => List(col), growable: false);
//For fill;
twoDList[0][1] = "deneme";
print(twoDList);
}

출력되는 값은 [[null, deneme, null, null], [null, null, null, null], [null, null, null, null]]

즉 3 * 4의 2차원 리스트(배열) 생성

참고) stackoverflow.com/questions/57860596/creating-a-2d-array-in-flutter-dart

 

- 1차원 리스트를 생성한 후에 생성된 1차원 리스트에 값을 add하는 방법

  add하는 값이 다시 list 값이다

 

List<dynamicmyNumber() {

  var number = [];

  number.add((List.generate(45, (index) => ++index)..shuffle()).sublist(06));

  number.add((List.generate(45, (index) => ++index)..shuffle()).sublist(06));

  number.add((List.generate(45, (index) => ++index)..shuffle()).sublist(06));

  number.add((List.generate(45, (index) => ++index)..shuffle()).sublist(06));

  number.add((List.generate(45, (index) => ++index)..shuffle()).sublist(06));

  for (var i = 0; i < 5; i++) {

    print(number[i]);        <- 각 i 값에 맞게 데이터가 출력된다 

  }

 

2. 2차원 배열에서 값을 가져오기

 for (var i = 0; i < 5; i++) {

    print(number[i][0]);       

  }

 해당하는 값을 가져온다

 

즐거운 시간되세요^^

 

 

반응형