728x90
반응형
Cascade Notation에 알아보기 위해
먼저 클래스를 생성하고 그 값을 변경하는 코드를 작성하겠습니다.
class Human {
String name;
int age;
String hair;
Human({
required this.name,
required this.age,
required this.hair,
});
void intro() {
print("My name is $name and I'm $age years old. My hair-color is $hair");
}
}
void main() {
var human = Human(name: 'name', age: 20, hair: 'gold');
human.age = 21;
human.hair = 'silver';
human.name = 'nickname';
human.intro();
}
Human 클래스를 named constructor로 생성하고
생성된 클래스 객체의 멤버 변수를 변경하였습니다.
human 객체의 intro() 메소드로 멤버 변수가 정상적으로 변경된 것을 확인할 수 있습니다.
그럼 이제 위의 코드를
Cascade Notation을 이용해 변경해보겠습니다.
class Human {
String name;
int age;
String hair;
Human({
required this.name,
required this.age,
required this.hair,
});
void intro() {
print("My name is $name and I'm $age years old. My hair-color is $hair");
}
}
void main() {
var human = Human(name: 'name', age: 20, hair: 'gold')
..age = 21
..hair = 'silver'
..name = 'nickname';
human.intro();
}
짜잔 ~
Cascade Operator는 값을 복사할 때도 사용할 수 있습니다.
class Human {
String name;
int age;
String hair;
Human({
required this.name,
required this.age,
required this.hair,
});
void intro() {
print("My name is $name and I'm $age years old. My hair-color is $hair");
}
}
void main() {
var human1 = Human(name: 'name', age: 20, hair: 'gold');
var human2 = human1
..age = 21
..hair = 'silver'
..name = 'nickname'
..intro();
}
이번에는 Cascade Operator로 값을 변경하고
intro() 메서드도 호출해봤습니다.
감사합니다.
반응형