Scala 導(dǎo)入

2022-05-13 15:16 更新

導(dǎo)入類型及其成員

要在包中使用聲明,我們必須導(dǎo)入它們,就像在Java中一樣。

Scala提供了其他選項(xiàng),如下面導(dǎo)入Java類型的示例所示:

包是一個(gè)命名的代碼模塊。

Java和Scala慣例規(guī)定程序包名稱是代碼所有者的反向域名。

源文件中的第一個(gè)非注釋行:

package com.java2s.stuff

可以導(dǎo)入Scala包,以便可以在當(dāng)前編譯范圍中引用它們。

以下語句導(dǎo)入scala.xml軟件包的內(nèi)容:

import scala.xml._

以下語句導(dǎo)入scala.xml軟件包的內(nèi)容:

import transform._

我們可以從scala.collection.mutable包中導(dǎo)入單個(gè)類和對象,例如HashMap:

import scala.collection.mutable.HashMap

我們可以從單個(gè)包中導(dǎo)入多個(gè)類或?qū)ο?,例如,從scala.collection.immutable包中導(dǎo)入TreeMap和TreeSet:

import scala.collection.immutable.{TreeMap, TreeSet}

例子

     import java.awt._ 
     import java.io.File 
     import java.io.File._ 
     import java.util.{Map, HashMap} 

我們可以在包中使用下劃線 _ 作為通配符導(dǎo)入所有類型。

我們還可以導(dǎo)入單個(gè)Scala或Java類型,如第二行所示。

Java使用“星號"字符 * 作為導(dǎo)入的通配符。

在Scala中,此字符被允許作為方法名稱,因此使用 _ 來避免歧義。

第三行導(dǎo)入java.io.File中的所有靜態(tài)方法和字段。

等效的Java導(dǎo)入語句將是import static java.io.File。*;

最后,我們可以導(dǎo)入一個(gè)類或?qū)ο蟛⒅孛@?,您可以從scala.util.parsing.json包中導(dǎo)入JSON類/對象,并將其重命名為JsonParser:

import scala.util.parsing.json.{JSON=> JsonParser}

import可以在任何代碼塊內(nèi)部使用,導(dǎo)入將僅在該代碼塊的范圍內(nèi)有效。

例如,我們可以在類體中導(dǎo)入一些東西,如下面的代碼所示:

class Frog {
    import scala.xml._
    //
}

例如,我們可以在類體中導(dǎo)入一些東西,如下面的代碼所示:

這很像Java的靜態(tài)導(dǎo)入。

組合局部范圍導(dǎo)入和導(dǎo)入對象允許我們微調(diào)導(dǎo)入對象及其關(guān)聯(lián)方法的位置。

注意

Scala沒有導(dǎo)入靜態(tài)構(gòu)造,因?yàn)樗衿渌愋鸵粯訉Υ龑ο箢愋汀?br>

我們可以將import語句幾乎放在任何地方,以將它們的可見性限制在需要它們的地方。

我們可以在導(dǎo)入時(shí)重命名類型,我們可以禁止不需要的類型的可見性:

     def stuffWithBigInteger() = { 

       import java.math.BigInteger.{ 
         ONE => _, 
         TEN, 
         ZERO => JAVAZERO } 

       println( "TEN: "+TEN ) 
       println( "ZERO: "+JAVAZERO ) 
     } 
     

導(dǎo)入是相對的

Scala導(dǎo)入是相對的。

請注意以下導(dǎo)入的注釋:

     import scala.collection.mutable._ 
     import collection.immutable._              // Since "scala" is already imported 
     import _root_.scala.collection.parallel._  // full path from real "root" 
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號