當前位置:成語大全網 - 書法字典 - Scalafor循環字典

Scalafor循環字典

目標

scala中沒有靜態方法和靜態字段,所以在scala中可以使用object來實現這些功能,直接用對象名調用的方法都是這樣實現的,比如Array.toString .對象的構造函數在第壹次使用時就會被調用。如果壹個對象從未被使用過,它的構造函數將不會被執行。壹個對象本質上擁有壹個類的所有特征(在scala中)。此外,對象還可以擴展壹個類和壹個或多個特征:例如,

抽象類類名(val參數){}

對象測試擴展類名(val參數){}

特質TraitA{}

特質TraitB{}

特質TraitC{}

對象測試1用TraitC{}擴展了TraitA和TraitB

註意:對象不能提供構造函數參數,這意味著對象必須是無參數的。

我們通常定義和使用對象的apply方法。在下列情況下,將調用apply方法。對象(參數1,參數2,...)是對apply方法的隱式調用。當然,它也可以顯示,例如下面的數組(“Mary”、“tong”)。當然也可以這樣寫。

所有的main方法都必須在對象中調用以提供程序的主入口,這非常簡單。除了處理main方法之外,scala還提供了壹個擴展的App特性,然後將程序代碼放入清晨的方法體中,例如

對象Hello擴展應用程序{

println(“Hello World!!!")

}

這樣的代碼可以直接執行和輸出。

如果您需要命令行參數,可以直接調用args屬性來獲取它們,例如

def main(args:Array【String】){ if(args . length & gt;0)println(“Hello“+args(0))否則

println(“Hello World”)

}scala中沒有枚舉類型,但標準類庫中提供了枚舉類型的接口。在對象下,可以擴展枚舉類型。

具體示例如下:對象枚舉演示擴展枚舉{valred,green,blue,pink = value。

Val black = Value //上述語句是速記。

val white =值

val灰度=值

val yellow = value(12,“Huang“)//可以任意指定id和名稱,但要避免重復。

Val紫色= Value(“zi“)//id為13。

val orange =值(20)

}

以上代碼是實現枚舉類型的具體代碼。如果不指定id和name,系統默認id從0開始,name是變量的名稱,可以指定。

指定其中壹個或兩個,指定的按指定初始化,後續的依次遞增。

枚舉引用

可以直接引用為objectName.red,導入為objectName。_,並將類型別名添加到枚舉類型中。

詳情如下:

對象枚舉Demo擴展枚舉{ type Enumeration demo = Value val red、green、blue、pink = Value

val black =值

val white =值

val灰度=值

val yellow = Value(12,“Huang“)val purple = Value(“zi“)val orange = Value(20)

}

現在枚舉類型變成了enumerationdemo。Enumerationdemo只有在使用import語句時才有意義。

包枚舉導入枚舉演示。_/** *由童童於2065438年5月9日創建。*

*/class enum demo { def transportation(color:Enumeration):Unit = { if(color = = red)“Stop“else if(color = = green)“go“else if(color = = yellow)“wait“}

}

枚舉類型也可以通過for循環輸出所有的元素,同時可以通過Enumeration(Int)和Enumeration.withName(““)進行定位。

班級

在scala中,類名可以與對象名相同,對象名稱為類的伴隨對象。類和伴隨對象可以訪問它們的私有屬性,但是

它們必須在同壹個源文件中。類只能編譯,不能直接執行。類的聲明與主構造函數壹起聲明。在壹個類中,只有壹個主構造函數。

所有必須在內部聲明的主構造函數或聲明主構造函數的其他輔助構造函數將執行類定義中的所有語句。Scala提供了每個字段。

Getter和setter方法也可以顯示的聲明,但是對於val類型,只提供了getter方法。默認情況下,字段是公共類型,可以向setter方法添加限制以限制變量的範圍。在scala中,方法可以訪問所有重新分類的對象的私有字段。