728x90
dart 문법은 객체지향 언어를 한번쯤 접해보신 분이라면 쉽게 접근 하실수 있습니다.
저와 마찬가지로 플러터를 위해 dart 문법을 공부 하시는 분들이라면 빠르게 보고 넘어가시는걸 추천 드립니다.
변수에 값 담기
var name = "HELLO";
print(name);
var name2 = "레드벨벳";
print(name);
name = "플러터 프로그래밍";
print(name);
파이썬을 공부 하신분들이라면 var? 이게 뭐지 하실수 있을거 같은데 아래 자료형에 대하여 정리하면서 다시 한번 설명 하겠습니다.
자료형 정리
//정수
int number1 = 10;
print(number1);
int number2 = 15;
print(number2);
int number3 = -20;
print(number3);
print(number1 + number2);
print(number1 - number2);
print(number1 * number2);
print(number1 / number2);
print("---------------------------------");
//실수
double num1 = 2.5;
double num2 = 0.5;
print(num1 + num2);
print(num1 - num2);
print(num1 * num2);
print(num1 / num2);
print("---------------------------------");
//Boolean 맞다/틀리다
bool isTrue = true;
bool isFalse = false;
print(isTrue);
print(isFalse);
print("---------------------------------");
// String 글자 타입
String name4 = "레드벨벳";
String name5 = "우기";
print(name4);
print(name5);
위에 보이는 자료형은 사실상 모든 언어에서 공용으로 사용한다 봐도 무방합니다.
var 자료형
//var String은 무엇이냐면
var name6 = "jjk";
var num3 = 2; // 이런식으로 자료형을 직접 정하지 않고 오른쪽 값에 따라 정해지는 것임
print(name6.runtimeType); // runtimeType 실제 실행되는 순간 어떤 타입인지 알려줌
print(num3.runtimeType);
실행해보시면 문자타입과 숫자 타입이라고 출력해줍니다.
dynamic 자료형, var 자료형과 차이점
// 다이나믹 타입 (어떤 타입이던 다 넣을수 있음 var랑 비슷)
dynamic name7 = "플러터 최고"; // 자료형을 마음대로 변경 가능하게 해줌
print(name7);
dynamic name8 = 3;
print(name8);
var name9 = "플러터 최고";
print(name9);
print(name7.runtimeType); // 둘다 스트링 형인걸 알수 있음 그럼 무슨 차이냐?
print(name9.runtimeType);
name7 = 1;
print(name7);
//name9 = 1;
//var는 선언 뒤로 바꿀수가 없음 처음 초기화시 지정된 자료형이 픽스 되는 것임 바꾸려면 오류남
nullable 과 non-nullable
// nullable 과 non-nullable
// nullable - null 이 될수 있다.
// non-nullable - null이 될수 없다.
// null - 아무런 값도 있지 않다.
String strTest1 = "woogie";
print(strTest1);
//strTest1 = null 오류남 널이 들어갈수 없는 타입인데 널을 넣었다는 오류임
// 지금까지 배운 모든 타입들은 전부 두가지로 나뉨
// 지정한 타입만 들어갈수 있는경우
// 지정한 타입과 null이 들어 갈수 있는 경우.
String? strTest2 = "woogie";
strTest2 = null; //
print(strTest2);
// 어떤 타입이던 위와같이 ? 넣으면 null 까지 들어갈 수 있는것임
// 나중에 앱개발 할때 null 들어가서 앱이 뻗어버리는 것을 방지 할 수 있음
// 반대는 !임
String? strTest3 = "!널 불가능";
print(strTest3!);// 나중에 함수같은거에 ! 을 넣으면 널이 들어갈 수 없다고 알려주는 것임
// 즉 ?에 반대가 !임 즉 현재 이값은 널이 아니다 알려주는 것
https://github.com/jeonguk29/flutter_study/tree/main/dart_study/Code_Factory
소스코드 참고해서 직접 실행해보시는걸 추천 합니다
728x90
'APP > Dart' 카테고리의 다른 글
dart 문법 총 정리 OOP (객체지향 프로그래밍) 1. 생성자 (0) | 2022.08.04 |
---|---|
dart 문법 총 정리 5. typedef (0) | 2022.07.26 |
dart 문법 총 정리 4. 사용자 정의 함수, Enum (0) | 2022.07.26 |
dart 문법 총 정리 3. 조건문과 반복문 (0) | 2022.07.26 |
dart 문법 총 정리 2. List, Map, Set (0) | 2022.07.26 |