기본 Null 안전성
Coddy Dart 여정의 기초 섹션에 포함된 레슨 — 94개 중 14번째.
Null safety는 어떤 변수가 비어 있을 수 있는지(null)를 제어하여 예상치 못한 앱 충돌을 방지하는 데 도움이 됩니다.
기본적으로 변수는 값을 포함해야 합니다:
void main() {
String name = 'Dart';
print(name); // 출력: Dart
// This would cause problems:
// name = null; // Not allowed
}타입 뒤에 ?를 추가하여 null 값을 허용하세요:
void main() {
String? name = 'Dart';
print(name); // Outputs: Dart
// Now we can assign null
name = null;
print(name); // Outputs: null
}어떤 타입의 nullable 변수도 선언할 수 있습니다:
void main() {
int? age; // 초기값 없음, null로 기본 설정
double? price = 19.99;
bool? isAvailable = true;
print(age); // 출력: null
print(price); // 출력: 19.99
print(isAvailable); // 출력: true
// 이 중 아무거나 null로 변경할 수 있습니다
price = null;
isAvailable = null;
}
Null safety는 코드가 작업에서 null 값을 사용하려고 할 때 발생하는 예상치 못한 충돌로부터 앱을 보호하는 데 도움이 됩니다.
챌린지
초급? 연산자를 사용하여 기본 null safety를 보여주는 Dart 프로그램을 만드세요:
username이라는 이름의 String 변수를 선언하고 null safety 연산자?를 사용하여null로 설정하세요 (String?)userAge이라는 이름의 int 변수를 선언하고 null safety 연산자를 사용하여null로 설정하세요- 라벨과 함께 두 변수를 정확히 다음 형식으로 출력하세요:
Username: null
User age: null그 다음:
username변수에 값"DartLearner"를 할당하세요userAge변수에 값25를 할당하세요- 이전과 정확히 같은 형식으로 두 변수를 다시 출력하세요
출력은 위에 표시된 정확한 형식을 맞춰야 합니다.
치트 시트
기본적으로 Dart 변수는 null이 될 수 없습니다. null 값을 허용하려면 타입 뒤에 ?를 추가하세요:
// Non-nullable (default)
String name = 'Dart';
// Nullable with ?
String? name = 'Dart';
name = null; // Now allowed임의의 타입의 nullable 변수를 선언할 수 있습니다:
int? age; // Defaults to null
double? price = 19.99;
bool? isAvailable = true;
// All can be set to null
price = null;
isAvailable = null;직접 해보기
void main() {
// 여기에 nullable 변수를 선언하세요
String? username = ?;
int? userAge = ?;
// 레이블과 함께 초기 값을 출력하세요
print("Username: " + username.toString());
print("User age: " + userAge.toString());
// 변수에 새로운 값을 할당하세요
username = ?;
userAge = ?;
// 동일한 레이블로 업데이트된 값을 출력하세요
print("Username: " + username.toString());
print("User age: " + userAge.toString());
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
2변수와 기본 데이터 타입
변수는 무엇인가?문자열정수 (int)실수 (double)불리언 (bool)'var'를 사용한 타입 추론final 변수상수 변수명명 규칙기본 Null 안전성복습 - 변수 선언