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

오공완(with 코드팩토리) #6, #7 (var, dynamic, List)

by 또또도전 2024. 6. 7.
반응형

 

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

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

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

 

var로 변수는 값에 의해 타입이 지정이 됨. 

그리고 한 번 지정된 변수에 다른 값을 넣을 때는 var를 넣지 않아도 됨.

하지만, 처음에 String 타입을 넣었다면, 값을 다른 타입을 넣을 수 없음.(예를 들어 integer, double 등의 값을 넣을 수 없음.)

 

void main() {
  var name= '코드팩토리';
  
  print(name);
  
  name = '슬기';
  
  print(name);
  
}

 

dynamic 타입은 var처럼 어떤 타입이든 넣을 수도 있으며, 타입이 지정되었어도 다른 타입의 값을 넣어도 오류가 없음. var와 다른 점. 초보한테는 좋은 거 같은데, 개발자들은 이런 자유도가 높은 코드는 좋아하지 않으며 잘 안 쓴다고 함.

최초 name 변수에 값을 지정하지 않으면 오류없이 출력이 되나 이 역시 자주 사용하는 코드는 아니라고 함.

 

List(변수에 여러개의 값을 저장할 수 있는 변수 타입임.)

 

코드팩토리 영상에서는 두 코드 모두 같다고 했는데, 실제로 했을 때는 컨스트럭터(네 녀석이 뭔지는 모르겠지만)를 찾을 수 없다는 에러코드가 나온다. 타이핑을 잘못한 거 같지도 않은데.. 아마 버전이 달라서 이런 것인지..

 

리스트에 값을 추가할 때는 add를 사용하고 뺄 때는 removeAt을 활용해서 해당 번호(순서, index)를 입력해서 뺄 수 있다. 다만, 기계는 첫 숫자가 0이라서 우리가 생각하는 순서의 값을 뺄 때는 -1을 해서 넣어야 함.

또, 리스트의 index는 각각의 값을 가져올 때도 사용 가능함.

또, 특정 값만 바꿀 때도 사용.

후반에 new List를 가지고 값의 개수를 지정하는 방법이 나와 있는데, 그 방법은 역시나 constructor를 찾을 수 없단다.

 

다음은 Map인데 어려울 것 같아 내일로 미룬다.

반응형