본문 바로가기

생각정리/개발일지

0508-[Dart] 언어 기초 학습

1. 작성 날짜 : 2023, 0508

2. 공부 내용 : Dart 언어 기초 학습

- 변수 선언 

변수 선언, 문자열 선언은 기존에 배웠던 프로그래밍 언어와 동일 (C)

 

3. 기억에 남는 점

1) $ 변수의 사용

- $ : 하나의 예외, $바로 다음만 변수로 취급 

void main() {
  //var name = 'DartPad'; // 어떠한 타입의 정수를 선언할 지 정하지 않았을 때 사용
  //double number5=12; // 정수는 실수에 포함 사칙연산 가능
  //String name = 'DartPad'; // 대문자로 시작

  String name2 = '슬기';
  String sentence = '는 레드벨벳 멤버입니다.';

  print(name2 + sentence); // ''사이 = 글자로 인식
  print('$name2$sentence'); // $ : 하나의 예외, $바로 다음만 변수로 취급

  int count = 5;
  String sentence2 = '레드벨벳 멤버는 $count명 입니다.';

  print(sentence2);
  }

"$count = 5명"으로 출력

 

2) bool type은 string 인식 방지를 위해 ''를 사용하지 않는다.

bool isTrue = true; // ''안에 넣으면 string으로 인식하기에 문자만 작성한다.
bool isFalse = false; 
  
print(isTrue);
print(isFalse);

 

3) var 타입은 처음 선언한 변수 타입을 변경할 수 없지만, (참고) 처음에 선언하지 않으면 변경 가능하다.

(1) error 코드

void main() {
  var name = 'DartPad';
  
  print(name);
  
  name = 'Flutter'; // 이미 선언한 변수 변경시 var 타입을 선언하지 않고 바로 변경 가능
  print(name);
  
  name = 1; // error, 처음 선언한 변수 타입을 변경할 수 없음
  print(name);
}

 

(2) 실행 가능한 코드 

void main() {
  var name;
  
  print(name);
  
  name = 'Flutter'; // 이미 선언한 변수 변경시 var 타입을 선언하지 않고 바로 변경 가능
  print(name);
  
  name = 1; // error, 처음 선언한 변수 타입을 변경할 수 없음
  print(name);
}

 

4) dynamic type이란 Var과 달리 처음 선언한 변수를 변경할 수 있는 타입이지만, 변수 선언의 확실성 때문에 잘 쓰지 않는다.

void main() {
  dynamic name='DartPad';
  
  print(name);
  
  name = 'Flutter'; // 이미 선언한 변수 변경시 var 타입을 선언하지 않고 바로 변경 가능
  print(name);
  
  name = 1; // error, 처음 선언한 변수 타입을 변경할 수 없음
  print(name);
}

3)-(1) error 코드를 dynamic type 변수로 선언 해주니 오류 발생 X 

 

7) List 선언은 "List=[]"로 하고, 원소 추가(list이름.add('')), 원소 제거(list이름.removeAt(인덱스번호))로 한다. 

void main() {
  List exList =[];
  print(exList);

  exList.add('Person');
  exList.add('Animal');
  exList.add('Dog');
  
  print(exList);
  
  exList.removeAt(1); // index[1] 'Animal' 제거
  print(exList);
  
  exList.add('Animal'); //삭제된 Anmial 다시 추가
  print(exList);
  
  print(exList[1]); // 인덱스 정보를 불러올 때, 인덱스의 값을 변경할 때 사용
  exList[0] = 'Cat';
  print(exList);
}

 

8) Growable List를 Fixed lengthList로 선언하여 크기를 고정 하기려면 "List.filled(list크기, 모든요소)"; 를 사용한다. 

- Growable List : 리스트의 사이즈가 자유롭게 늘어나거나 줄어들 수 있는 리스트

- Fixed lengthList : 선언할 때 길이가 정해져서 추가적으로 길이를 늘이거나 줄일 수 없는 리스트 

void main() {
  // 크기가 5이고, 모든 요소가 0인 리스트 생성
  List<int> myList = List.filled(5, 0);
  print(myList);

  // 크기가 3이고, 모든 요소가 'hello'인 리스트 생성
  List<String> myOtherList = List.filled(3, 'hello');
  print(myOtherList);
}

 

4. 참고 레퍼런스 

https://www.youtube.com/watch?v=ZM9HVIF7E1s 

 

5. 느낀점 

List 관련 기초 지식 보충, dynamic 변수 타입에 대해 알게 된 점이 좋았다. 

'생각정리 > 개발일지' 카테고리의 다른 글

0509-[Dart] 언어 기초 학습  (0) 2023.05.09