我爱模板网 > 建站教程 > dart >  dart笔记6:重写操作符正文

dart笔记6:重写操作符

dart笔记6:重写操作符:
void main() {
  Rectangle a = Rectangle(10, 10);
  Rectangle b = Rectangle(5, 5);
  Rectangle c = Rectangle(10, 10);
  print(a == b); //false
  print(a == c); //true

  Rectangle d = a + b;
  print('${d.width}--${d.height}'); //15--15
}

class Rectangle {
  int width;
  int height;

  Rectangle(this.width, this.height);

  @override
  bool operator ==(dynamic other) {
    if (other is! Rectangle) {
      return false;
    }
    Rectangle temp = other;
    return (temp.width == width && temp.height == height);
  }

  @override
  Rectangle operator +(dynamic other) {
    if (other is! Rectangle) {
      return this;
    }
    Rectangle temp = other;
    return Rectangle(temp.width + width, temp.height + height);
  }
}



部分素材资源来源网站,本站提供免费下载,如有侵权请联系站长马上删除!
上一篇:dart笔记5:重构override+画圆 下一篇:dart笔记7:dart abstract抽象类
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
选择头像:
最新评论

猜你喜欢