在Dart中是什么意思?

时间:2018-08-30 16:36:35

标签: dart

在Dart的一些代码示例中看到了波浪号。我已经看到它在C ++中用作析构函数,可以在其中调用它来删除对象的实例,它在Dart中具有相同的功能吗? Java中有等效的符号吗?

2 个答案:

答案 0 :(得分:5)

~运算符是Dart对象上的可重载运算符,因此它可以表示您想要的任何内容。在平台库中,唯一的用途是int.operator~,它按位取反(类似于C,Java和JavaScript中类似的整数运算符)。

正如GüntherZöchbauer所提到的,~也出现在可重载的~/运算符中,平台库将其num.operator~/用于整数除法。默认情况下,~~/运算符之间没有关系。

因此,这并不意味着“破坏”。 Dart不允许显式销毁,也不允许任何销毁-语言规范没有说明对象死亡的时间。 (实现垃圾收集使用代码无法再看到的对象,以保留内存。)

答案 1 :(得分:3)

Dart不支持析构函数

https://www.dartlang.org/guides/language/language-tour#operators

~当前仅用于

~/除,返回整数结果

~/=整数除法和赋值。

在Java中并没有真正的等效物。
在Java中,如果将结果赋给一个整数变量(不确定,不是Java开发人员),则结果为整数