[플러터] 4. dart 문법 1

silver's avatar
Feb 03, 2025
[플러터] 4. dart 문법 1
int n1 = 1; double d1 = 10.1; bool b1 = true; String s1 = "홍길동"; var n2 = 10.1; // 초기화되면서 type추론이 확정돼 int 메모리 사이즈로 확정 dynamic n3 = 20; // 모든 타입을 다 받을 수 있다. 중간매개자로써 후에 새로운 타입으로 초기화되면 새로운 메모리 공간으로 보내 타입변경을 가능하게 한다. void main(){ print("n1 : ${n1.runtimeType}"); print("d1 : ${d1}"); print("b1 : ${b1}"); print("s1 : ${s1}"); }

var

var n1 = 10; // → 10이 들어가는 순간 타입추론 완료! 이제 int만 넣을 수 있어 // 하지만 double로 설정하고 함수 내에서 n2 = 10; int형으로 작성 시 오류 안 뜸 // → 경고 정도? 메모리가 더 커서 하지만 웬만하면 쓰지마라 노랗게 계속 나옴 var n2 = 10.5 //그러나!!! var n3 = “홍길동” → var n3 = 10; // 하면 오류 → 메모리 문제 + 숫자와 문자의 차이!
 

dynamic

: object type 으로 모든 타입을 다 받을 수 있다 → 타입변경도 가능 중간에서 매개해줘서 처음 선언한 타입과 다른 타입을 집어넣어주면 메모리 공간 새로 만들어서 넣어줌
notion image

null 대체 연산자 ??

:==null? (null이냐?)를 줄여서 ??로 쓸 수 있다!!
void main(){ String? username = null; //null을 가질 수 있으려면 ?붙여야한다. String을 쓰면 String만 써야한다 print(username); print(username == null? "홍길동":username); print(username ?? "홍길동"); // null대체 연산자 = ?? }
String 이라고 적으면 null도 못 받아
→ 받으려면 String? 붙여야한다.
 

함수

Function a = int add(){ //이렇게 하면 오류 }; Function b = (){ return 1; }; // 람다식으로도 작성해보기 -> 람다식에는 return이 필수이다(공급자) // 람다식은 한 줄로 표현 가능한 함수만 쓸 수 있다. 여러줄이면 (){} 사용해라 Function b = () => 1; // Function을 Function이 아닌 var로도 표현이 가능하다 var c = () => 1; var c = (){ return 1; } // main 함수는 기본적으로 인자를 받지 않거나, List<String> args를 받는 식으로 사용해야 한다. void main(){ int result = c(); // 앞에 int로 명시했기 때문에 c();의 결과값이 int여야한다 print(result); }
 
💡
${} 구문을 사용하여 변수를 문자열에 삽입
Share article

silver