본문 바로가기
앱/Dart

Dart QQ operator, QQ assignment operation

by devved 2023. 1. 20.
반응형

QQ operator(question question)

??
left ?? right
좌항이 null이면 우항을 return함

String capitalizeName(String? name) => name.toUpperCase();
// null 값을 보내주기 위햐여 String? 달아주기

// null값 처리 방법 1
// String capitalizeName(String? name) {
//   if (name != null) {
//     return name.toLowerCase();
//   }
//   return 'ANON';
// }

// null값 처리 방법 2 (더 깔곰쓰)
// String capitalizeName(String? name) =>
//     name != null ? name.toUpperCase() : 'ANON';

// ⭐️ null값 처리 방법 2 (더더!!!! 깔곰쓰)
// String capitalizeName(String? name) => name?.toUpperCase() ?? 'ANON';
// name 자체가 null일경우 처리하기 위해 naem?.해줌

void main() {
  capitalizeName('siha');
  capitalizeName(null);
}

 

QQ equals = QQ assignment operation

?=

void main() {
  String? name;
  name ??= 'siha';
  // 만약 name이 null이면 'siha' 값을 할당하는 것
  name = null;
  name ??= 'another';
  print(name);
}
반응형