Flutter必備語言Dart教程01 - 變量,類型,函數

Flutter必備語言Dart教程01 - 變量,類型,函數

Hello World

致敬經典 'Hello World' 程序。

Flutter必備語言Dart教程01 - 變量,類型,函數

與Java類似,每個Dart程序都必須有一個main作為其入口點。

要運行程序,請將其保存在名為“hello_world.dart”的文件中,並在終端中執行以下命令。(如果沒有dart環境,請先完成安裝。)

Flutter必備語言Dart教程01 - 變量,類型,函數

定義變量

就像在JavaScript中一樣,您可以使用var關鍵字來定義變量。

Flutter必備語言Dart教程01 - 變量,類型,函數

但是!與JavaScript不同,在Dart 2中,一旦分配了類型,就無法將具有新類型的值重新分配給變量。 Dart會自動從右側推斷數據類型。

您還可以通過顯式提供數據類型來定義變量。

Flutter必備語言Dart教程01 - 變量,類型,函數

如果您不打算更改變量所持有的值,則使用final或const聲明它。

Flutter必備語言Dart教程01 - 變量,類型,函數

final 和 const之間的區別在於:

const變量是編譯時常量,即const變量在編譯期間必須有一個值,例如const PI = 3.14;

雖然final的變量只能分配一次,但它們不需要在編譯期間分配,並且可以在運行時分配。也就是說,final的變量可以先不賦值,稍後在其他地方賦值。

內置數據類型

Dart提供了您可以從現代語言中獲得的所有基本數據類型。

  • Numbers
  • Strings
  • Booleans
  • Lists
  • Maps
Flutter必備語言Dart教程01 - 變量,類型,函數

Lists

聲明一個列表非常簡單,使用方括號[]可以簡單地定義一個列表。以下是列表中的一些常見操作。

Flutter必備語言Dart教程01 - 變量,類型,函數

如果要定義一個編譯時常量的List,即列表內容不可更改,則使用const關鍵字。

Flutter必備語言Dart教程01 - 變量,類型,函數

Maps

定義Map同樣直截了當。使用花括號{}來定義Map。

Flutter必備語言Dart教程01 - 變量,類型,函數

您還可以使用Map構造函數定義map。

Flutter必備語言Dart教程01 - 變量,類型,函數

如果要定義編譯時常量的Map,即map的內容不可更改,則使用const關鍵字。

Flutter必備語言Dart教程01 - 變量,類型,函數

函數

Dart中的函數儘可能簡單,有點類似於javascript。您需要做的就是提供名稱,返回類型和參數。

Flutter必備語言Dart教程01 - 變量,類型,函數

您甚至可以省略返回類型,程序仍然有效。

Flutter必備語言Dart教程01 - 變量,類型,函數

這是編寫單行函數的簡便方法。

Flutter必備語言Dart教程01 - 變量,類型,函數

命名參數

Dart有一個叫做命名參數的東西,當使用命名參數時,你必須在調用函數時指定參數的名稱。要啟用命名參數,只需使用大括號{}將參數包裝在函數中。

Flutter必備語言Dart教程01 - 變量,類型,函數

如果在使用命名參數調用函數時未提供名稱,則程序將崩潰。

默認參數值

您可以為命名參數指定默認值,從而在調用函數時使它們成為可選參數。在下面的示例中,我們為lastName指定了一個默認值。

Flutter必備語言Dart教程01 - 變量,類型,函數

函數是一等公民

在Dart中,函數非常靈活,例如,你可以在另一個函數中傳遞一個函數。對於這一點,JavaScript開發者應該很熟悉了。

Flutter必備語言Dart教程01 - 變量,類型,函數

在這裡,我定義了一個名為out的函數,它接受一個參數:一個函數(具有參數message)。然後我定義了一個名為printOutLoud的函數,它所做的就是以大寫形式打印一個字符串。

Dart也有匿名函數,所以在上面的例子中,我們可以傳遞一個匿名函數而不是預定義函數(printOutLoud)。

Flutter必備語言Dart教程01 - 變量,類型,函數

另一個匿名函數的例子。

Flutter必備語言Dart教程01 - 變量,類型,函數

系列文章:

Flutter必備語言Dart教程02 - 控制流,異常

Flutter必備語言Dart教程03 - 類,泛型

Flutter必備語言Dart教程04 - 異步,庫


分享到:


相關文章: