簡體   English   中英

Dart / Flutter 中的類型原語是什么?

[英]What are the type primitives in Dart / Flutter?

Dart / Flutter 中的類型原語是什么?

我期待一個包含StringClassFunction (?) 之類的列表。

我似乎在Dart 文檔中的任何地方都找不到這個。

具體來說,實際上現在我正在寫一些我想傳入 function 作為參數的東西,所以我試圖弄清楚函數/方法類型是什么(假設這是一個東西),但更一般地說,我想要參考所有 Dart 類型原語。

大多數 Dart 類型只是類/接口類型。 Unlike Java, Dart does not have "primitive" value types that are not interfaces, so in Dart int , double , String , bool and Null normal interfaces which are subtypes of Object? (以及Object除了Null ),並且這些值只是普通對象。

Dart 確實有一些類型類型構造函數,它們不是類/接口類型,或者具有阻止您實現它們的特定規則。 尤其是:

  • void - 相當於Object? ,但您不能使用該值。 您可以從void function 返回任何值,但不應有人使用它。
  • dynamic - 相當於Object? ,但沒有 static 類型檢查。 您可以將任何值強制轉換為dynamic ,然后將其用作任何類型,如果您犯了錯誤,則會出現運行時錯誤。
  • Never - 所有類型的空子類型。 返回Never的 function 保證會拋出。
  • type Function(argTypes) - function 類型。 有些值是函數。 它們仍然是對象,但不是類/接口實例。 接口FunctionObject的子類型。
  • FutureOr<type> - typeFuture<type>的超類型。
  • type? - 可以為空的類型。 typeNull的超類型。

然后以下接口有限制,阻止您在自己的類中實現它們: NullintdoublenumboolStringFunction

因此,對於 function 類型,您可以將它們寫為 fx, int Function(int, {int y})

我想這就是你要找的: dart:core library

每個 Dart 程序的內置類型、collections 和其他核心功能。

特別是這部分: Classes ,您可以在其中找到:

字符串UTF-16 代碼單元的序列。 [...]

Object所有 Dart 對象的基礎 class。 [...]

Function基礎 class 適用於所有 function 類型。 [...]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM