OHMYO
๊ดด๋ฐœ๊ฐœ๋ฐœ ๊ธฐ๋ก์ผ์ง€
OHMYO
์ „์ฒด ๋ฐฉ๋ฌธ์ž
2,131
์˜ค๋Š˜
0
์–ด์ œ
2
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (20)
    • ๐Ÿš€ Daily Life (1)
      • ๋•์งˆ (1)
      • ํšŒ๊ณ  (0)
    • ๐ŸŽ MAC OS (1)
    • ๐Ÿ”ซ Algorithm (0)
      • Goormlevel (0)
    • ๐ŸŒˆ Programming (17)
      • Dart (7)
      • ETC (1)
      • Flutter (4)
      • Git (0)
      • Javascript (1)
      • Laravel (2)
      • PHP (2)
    • ๐ŸŒŽ Server (1)
    • ๐Ÿง  Database (0)
      • MySQL (0)
    • ๐Ÿ’ป Computer Science (0)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

  • [Dart] Getter, Setter, ์ ‘๊ทผ ์ œํ•œ์ž
    2022.06.06
    [Dart] Getter, Setter, ์ ‘๊ทผ ์ œํ•œ์ž
  • ๋งฅ์—์„œ XAMPP(Apache, MySQL, PHP, Peโ‹ฏ
    2021.12.17
    ๋งฅ์—์„œ XAMPP(Apache, MySQL, PHP, Peโ‹ฏ
  • [Flutter] ํ”Œ๋Ÿฌํ„ฐ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ์ดํ•ดํ•˜๊ธฐ
    2022.06.07
    [Flutter] ํ”Œ๋Ÿฌํ„ฐ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ์ดํ•ดํ•˜๊ธฐ
  • [Dart] ํด๋ž˜์Šค ์ƒ์„ฑ์ž(Class Constructorโ‹ฏ
    2022.06.06
    [Dart] ํด๋ž˜์Šค ์ƒ์„ฑ์ž(Class Constructorโ‹ฏ
  • [Dart] ๊ฐ์ฒด ๋‹ค๋ฃจ๊ธฐ Map ํƒ€์ž…
    2022.06.06
    [Dart] ๊ฐ์ฒด ๋‹ค๋ฃจ๊ธฐ Map ํƒ€์ž…

ํƒœ๊ทธ

  • argument
  • flutter
  • constructor
  • Super
  • dart
  • ajax
  • crud
  • ๋„๋ฉ”์ธ
  • parameter
  • json
  • ์•ฑ
  • CENTER
  • ๋งฅ
  • Laravel
  • HOBBY FAIR
  • php
  • ์›น์„œ๋ฒ„
  • Class
  • Instance
  • Server
  • ์„œ๋ฒ„๊ตฌ์ถ•
  • Sizedbox
  • XAMPP
  • ์ธ์ž
  • Containe
  • ๋•์งˆ
  • MYSQL
  • override
  • ์ƒ์†
  • ํ”Œ๋ฃจํ„ฐ

์ตœ๊ทผ ๊ธ€

  • [Flutter] ๋‹จ์ผ ๋ฐ•์Šค(Container) ์œ„์ ฏ ์ž‘์„ฑ
    2022.06.07
    [Flutter] ๋‹จ์ผ ๋ฐ•์Šค(Container) ์œ„์ ฏ ์ž‘์„ฑ
  • [Fltutter] MaterialApp, Text, Scโ‹ฏ
    2022.06.07
    [Fltutter] MaterialApp, Text, Scโ‹ฏ
  • [Flutter] ํ”Œ๋Ÿฌํ„ฐ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ์ดํ•ดํ•˜๊ธฐ
    2022.06.07
    [Flutter] ํ”Œ๋Ÿฌํ„ฐ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ์ดํ•ดํ•˜๊ธฐ
  • [Dart] ์ƒ์†๊ณผ Super, Override
    2022.06.07
    [Dart] ์ƒ์†๊ณผ Super, Override
  • [Dart] Getter, Setter, ์ ‘๊ทผ ์ œํ•œ์ž
    2022.06.06
    [Dart] Getter, Setter, ์ ‘๊ทผ ์ œํ•œ์ž

ํ‹ฐ์Šคํ† ๋ฆฌ

๊ฐœ์ธ์ •๋ณด

  • ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ
  • ์Šคํ† ๋ฆฌ
  • ํฌ๋Ÿผ
  • ๋กœ๊ทธ์ธ
hELLO ยท Designed By ์ •์ƒ์šฐ.
OHMYO

๊ดด๋ฐœ๊ฐœ๋ฐœ ๊ธฐ๋ก์ผ์ง€

[Dart] ์—ด๊ฑฐํ˜• ๋ณ€์ˆ˜(List, Set)์™€ ์ œ๋„ค๋ฆญ(Generic)
๐ŸŒˆ Programming/Dart

[Dart] ์—ด๊ฑฐํ˜• ๋ณ€์ˆ˜(List, Set)์™€ ์ œ๋„ค๋ฆญ(Generic)

2022. 6. 6. 18:30

๐Ÿ”Ž ์—ด๊ฑฐํ˜• ๋ณ€์ˆ˜

๐Ÿ“ List ํŠน์ง•

• List ๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๊ฐ’์ž…๋‹ˆ๋‹ค.
• List ๋Š” ์ˆœ์„œ๊ฐ€ ๋ณด์žฅ๋ฉ๋‹ˆ๋‹ค.
• .add() ๋ฅผ ์ด์šฉํ•ด ๊ฐ’์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
• .addAll() ๋ฅผ ์ด์šฉํ•ด ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ฐ’์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
• .length ๋ฅผ ์ด์šฉํ•ด ๋ฆฌ์ŠคํŠธ์˜ ๊ธธ์ด๊ฐ’์„ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

void main() {
  // List ์„ ์–ธ ๋ฐฉ๋ฒ•
  List list = [];
  print(list); // []

  list.add('a'); // a ์ถ”๊ฐ€
  list.add('b'); // b ์ถ”๊ฐ€

  print(list); // [a, b]
  // list ๊ธธ์ด๊ฐ’ .length
  print(list.length); // 2

  print(list[0]); // a

  // list ์•ˆ์— ๊ฐ’์„ get (index ๊ธฐ๋ฐ˜)
  // index๋ฅผ ์ ‘๊ทผํ•  ๋•Œ๋Š” 0๋ฒˆ ๋ถ€ํ„ฐ ์‹œ์ž‘
  print(list[0]); // a

  // .addAll ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์„ ๋•Œ
  list.addAll(['c', 'd', 'e']);
  print(list); // [a, b, c, d, e]

  // index ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ’์„ ์ˆ˜์ •ํ•  ๋•Œ
  print('--------------------------');
  print(list); // [a, b, c, d, e]
  list[0] = '๊ฐ€';
  print(list); // [๊ฐ€, b, c, d, e]
  list[1] = '๋‚˜';
  print(list); // [๊ฐ€, ๋‚˜, c, d, e]
  list[2] = '๋‹ค';
  print(list); // [๊ฐ€, ๋‚˜, ๋‹ค, d, e]

๐Ÿ“ ํƒ€ํŠธ ์ œ๋„ค๋ฆญ(Dart Generic)

Dart ์˜ API documentation ์—์„œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋‚˜ ํด๋ž˜์Šค์˜ ์ •์˜๋ฅผ ๋ณด๋ฉด
<> ์™€ ๊ทธ ์•ˆ์— 'd', 'a', 'r', 't' ๊ฐ™์€ ๋ฌธ์ž๋กœ ๋œ ํ‘œํ˜„์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ œ๋„ค๋ฆญ(Generics) ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ณ€์ˆ˜ ํƒ€์ž…์„ ๋ช…ํ™•ํžˆ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ๊ณผ
๋ฐ˜๋ณต๋˜๋Š” ์ฝ”๋“œ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

List ์‹์˜ ํ‘œํ˜„์œผ๋กœ string ํƒ€์ž…์˜ ๊ฐ’์„ ๊ฐ€์ง€๋Š” ๋ฆฌ์ŠคํŠธ๋ผ๋Š” ๋ช…ํ™•ํ•œ ์„ ์–ธ์„ ํ†ตํ•ด
์ž˜๋ชป๋œ ํƒ€์ž…์˜ ๊ฐ’ ์‚ฝ์ž…์„ ๋ง‰์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  // ํŠน์ • ํƒ€์ž…๋งŒ list์— ๋‹ด๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ
  // <> ์ œ๋„ค๋ฆญํƒ€์ž…: ex. List<String> = List ์•ˆ์˜ ๊ฐ’๋“ค์€ String ํƒ€์ž…์œผ๋กœ ์ œํ•œ
  List<int> stringList = <int>[];
  stringList.add('d', 'a', 'r', 't');
  print(stringList); // [1]
  // stringList.add(1); // ์—๋Ÿฌ
}

๐Ÿ“ Set ํŠน์ง•

• Set ์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๊ฐ’์ž…๋‹ˆ๋‹ค.
• index ์ ‘๊ทผ X
• ์ˆœ์„œ๊ฐ€ ๋ณด์žฅ ๋˜์ง€ ์•Š๋Š” ์—ด๊ฑฐ ํƒ€์ž…์ž…๋‹ˆ๋‹ค.
• ์ฒ˜๋ฆฌ ์†๋„๊ฐ€ List ๋ณด๋‹ค ๋น ๋ฆ…๋‹ˆ๋‹ค.
• ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
• .add() ๋ฅผ ์ด์šฉํ•ด ๊ฐ’์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
• .addAll() ๋ฅผ ์ด์šฉํ•ด ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ฐ’์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
• .length ๋ฅผ ์ด์šฉํ•ด ๋ฆฌ์ŠคํŠธ์˜ ๊ธธ์ด๊ฐ’์„ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  // Set ์„ ์–ธ ๋ฐฉ๋ฒ•
  Set<String> set = {};
  set.add('a');
  set.add('b');
  set.add('c');
  set.add('a');

  print(set); // {a, b, c}
  print(set.length); // 3
  // set ์€ ์ˆœ์„œ ๋ณด์žฅ์ด ์•ˆ๋˜๋Š” ์—ด๊ฑฐ ํƒ€์ž…
  // print(set[2]); // ์—๋Ÿฌ

๐Ÿ“ ์œ ์šฉํ•œ ์—ฐ์‚ฐ์ž ์ข…๋ฅ˜

• .contains : ํ•ด๋‹น ๊ฐ’์ด ํฌํ•จ ๋˜์–ด ์žˆ๋Š” ์ง€๋ฅผ ํ™•์ธํ•˜๋Š” ์—ฐ์‚ฐ์ž

  List list = ['a', 'b', 'c'];
  // ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ
  print(list.contains('a')); // true
  print(list.contains('1')); // false
  print(list.contains('b')); // true

• .last : ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ index ๊ฐ’์„ ํ˜ธ์ถœํ•˜๋Š” ์—ฐ์‚ฐ์ž

  List list = ['a', 'b', 'c'];
  // ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ
  print(list.last); // c

• .first : ์ฒซ๋ฒˆ์งธ index ๊ฐ’์„ ํ˜ธ์ถœํ•˜๋Š” ์—ฐ์‚ฐ์ž

  List list = ['a', 'b', 'c'];
  // ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ
  print(list.first); // a

• .remove : ๊ฐ’์„ ์‚ญ์ œํ•˜๋Š” ์—ฐ์‚ฐ์ž

  List list = ['a', 'b', 'c'];
  list.remove('c');
  print(list); // ['a', 'b']

• .removeAt : index ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ’์„ ์‚ญ์ œํ•˜๋Š” ์—ฐ์‚ฐ์ž

  List list = ['a', 'b', 'c'];
  list.remove(0);
  print(list); // ['b', 'c']



'๐ŸŒˆ Programming > Dart' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Dart] Getter, Setter, ์ ‘๊ทผ ์ œํ•œ์ž  (0) 2022.06.06
[Dart] ํด๋ž˜์Šค ์ƒ์„ฑ์ž(Class Constructor)  (0) 2022.06.06
[Dart] ํด๋ž˜์Šค(Class) ์„ ์–ธ๊ณผ ์ธ์Šคํ„ด์Šค(Instance)  (0) 2022.06.06
[Dart] ๊ฐ์ฒด ๋‹ค๋ฃจ๊ธฐ Map ํƒ€์ž…  (0) 2022.06.06
[Dart] ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ ๊ธฐ์ดˆ ๋ฌธ๋ฒ•  (0) 2022.05.11
    '๐ŸŒˆ Programming/Dart' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Dart] ํด๋ž˜์Šค ์ƒ์„ฑ์ž(Class Constructor)
    • [Dart] ํด๋ž˜์Šค(Class) ์„ ์–ธ๊ณผ ์ธ์Šคํ„ด์Šค(Instance)
    • [Dart] ๊ฐ์ฒด ๋‹ค๋ฃจ๊ธฐ Map ํƒ€์ž…
    • [Dart] ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ ๊ธฐ์ดˆ ๋ฌธ๋ฒ•
    OHMYO
    OHMYO
    [Dart] ๊ฐ์ฒด ๋‹ค๋ฃจ๊ธฐ Map ํƒ€์ž…
    ๋‹ค์Œ ๊ธ€
    [Dart] ๊ฐ์ฒด ๋‹ค๋ฃจ๊ธฐ Map ํƒ€์ž…
    [Dart] ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ ๊ธฐ์ดˆ ๋ฌธ๋ฒ•
    ์ด์ „ ๊ธ€
    [Dart] ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ ๊ธฐ์ดˆ ๋ฌธ๋ฒ•

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”