Flutter/Dart

Dart 자료형 및 변수

오늘도개발 2023. 4. 19. 14:26

 

 1. Dart Documentation

 

 - 기본적인 자료형 및 문법에 대해서 궁금한 경우 공식 홈페이지의 Documentation을 참조한다.

 

https://dart.dev/guides

 

Dart documentation

Learn to use the Dart language and libraries.

dart.dev

 

 2. 변수 선언

 

 - JavaScript와 유사하게 var 변수명 = 값 으로 변수 선언 및 초기화를 할 수 있다.

 

- 런타임 에러 및 오토 타입케스팅 에러를 방지하기 위하여 Type을 지정할 수 있다.

 

void main(List<String> arguments) {
  
  // 문자열
  var name = 'ABC';
  String name2 = 'ABC';

  // 정수형
  var num = 4;
  int num2 = 4;

  // 실수형
  var double_num = 3.14;
  double double_num2 = 3.14;

  // 리스트
  var num_array = [1, 2, 3, 4];

 
}

 

- late 를 사용하여 나중에 값을 입력할 수 있다.

 

   Ex> late String name;  late int num; 

 

 

- finalconst 를 사용하여 값이 변경되지 않도록 고정할 수 있다.

 

   Ex> final name = 'jhonson';   final String nickname= 'Jhon'; // 표현만 다르고 두가지 표현 모두 같은 문법이다.

 

 

- final 은 실행 당시 메모리 할당이 일어나고 const는 컴파일 당시에 생성된다. (static)

 

   Ex> const pi = 3.14;  const double pie = 3.141; // 표현만 다를 뿐 두가지 표현 모두 같음

 

void main(List<String> arguments) {
  // 변수 선언 할 때, late 키워드를 사용하여 나중에 값을 입력 할 수 도 있다.

  late String name;

  late int num;

  // final 로 변경되지 않는 값을 가지는 변수를 지정할 수 있다. ( 코드 실행시 값이 설정 )
  final name2 = 'jhon';

  final String name3 = 'jhon';

  // const 로 변경되지 않는 값을 가지는 변수를 지정할 수 있다. ( 컴파일시 값이 설정 )
  const pi = 3.14;

  const double pi2 = 3.14;
}

 

 

 - var name = const [] ; 으로 컴파일시 메모리 확보를 먼저하고 나중에 값을 넣을 수 있다.

 

  Ex> var name = const [];  final name = const[];  const name = []; // 모두 같은 문법

 

 

 

 3. 문자열, boolean 값 표기

 

 -  문자열 표현은 '대상문자열' 으로 작성 가능하다.

 

 - 빈문자열('')은 null 과 다른 값이다.

 

 - booleanture, false 로 값을 입력할 수 있다.

 

 

 4. 문자열 안 변수 값 넣기

 

 - 문자열 '' 안에 $변수명을 통하여 값을 입력할 수 있다. (  C 와 유사)

 

 - 클래스의 값을 호출할 때, . 값을 입력해야 함으로 이때는 대괄호로 묶어 준다. ( {} )

 

    Ex> var name = 'Jhon';  print('이름 = $name')  -> 이름 = Jhon

 

          print('이름 = ${student.name}'); -> 클래스에 접근하는 경우

 

 5. nullable

 

 - 변수를 선언할 때, 타입 뒤에 ?를 추가하여 null을 허용할 수 있다.

 

   Ex> String? name; -> null ( '' 처럼 빈 문자열(empty)과는 다름)