다트Dart 연산자

휘Bin·2023년 6월 21일
0
post-thumbnail

대부분 프로그래밍이 비슷한 연산자를 제공한다. 사칙연산자인 +,-,*,/, 대입 연산자인 =,+=,-=,/=, 비교 연산자인 ==,!= 등등.
이외에 몇 가지 연산자를 알아보자!

나누기 연산자 => /, ~/

다트에서 나누기 연산자는 /, ~/ 가 있다.
/ 연산자는 나누기 결과를 '실수'로 반환하고,
~/ 연산자는 나누기 결과를 '정수'로 반환한다.

타입 확인과 변환 => is, as

is 연산자는 타입을 확인해 true, false로 나타내고,
as 연산자는 타입을 바꿔준다.
하위에서 상위로 형 변환을 할 때는 자동으로 이뤄지나, 상위에서 하위로 바꿀 때는 '명시적 형 변환'을 해야하는데, 이 때 as 연산자를 사용한다.

반복해서 접근하기 => .. , ?..

.. 또는 ?.. 연산자는 같은 객체를 반복해서 접근할 때 편리하게 사용할 수 있다. '캐스케이드 연산자' 라고도 한다.

class Member{
	String? name;
    int? age;
    
    prac(){
    	print($name, $age);
    }
}

위와 같이 Member 클래스를 선언했다고 하자.
이 때, 클래스의 객체를 생성해 멤버에 접근할 때 아래와 같이 코드를 작성할 수 있다.

var member = Member();
member.name = 'hwibin'
member.age = 20;
member. prac)_;

위와 같이 작성하면 같은 객체의 멤버에 여러 번 접근할 때 매번 객체 이름을 작성하는 것이 불편하다. 이럴 때 캐스케이드 연산자를 사용하면 간편하게 쓸 수 있다.
?.. 연산자는 nullable 객체일 때 사용한다.
그리고 캐스케이드 연산자를 사용하면 객체의 이름을 생략할 수 있어 편하다.

User()
 ..name = 'hwibin'
 ..age = 20;
 ..prac();
profile
One-step, one-step, steadily growing developer

0개의 댓글