dart (flutter) 문법 - ! (느낌표, exclamation mark)


// 리턴값이 항상 null이 아니지만 예를 위한 함수.

// int? 는 getInt()가 null을 리턴할 수 있다고 명시해 준다.
int? getInt() { return 3; }

void main() {

// int? 는 변수에 null을 허용하는 표현.
int? a = getInt();

// ERROE int b null을 허용하지 않는데
// getInt() null을 리턴할 수도 있으므로 에러가 난다.
//int b = getInt();

// getInt()! 에서 null을 리턴하지 않는다고
// getInt()의 끝에 !를 명시해 에러가 나지 않는다.
int c = getInt()!;
}

null 에러가 많이 나서 이런 기능을 추가 했다고 하는데
그다지 좋은 해결법이 아닌거 같다.
!를 붙여도 에러가 날 수 있는 구멍이 많다.

댓글

이 블로그의 인기 게시물

파이썬 vscode에서 자동 코드 정렬. Formatter.

Unity3D git 저장소에 올릴때 필요없는 파일 제외하기. gitignore

플러터(flutter) 개발 참고 사이트들.