您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么用Groovy讀取本地文件的代碼”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
下面這些包默認已經被導入了,不需要使用import再次顯式導入:
java.io.*
java.lang.*
java.math.BigDecimal
java.math.BigInteger
java.net.*
java.util.*
groovy.lang.*
groovy.util.*
運行時,Groovy根據參數類型決定具體哪一個方法被執行。而Java恰恰相反,被調用的方法根據參數類型,在編譯期間就已經定下來了。
In Groovy, the methods which will be invoked are chosen at runtime. This is called runtime dispatch or multi-methods. It means that the method will be chosen based on the types of the arguments at runtime. In Java, this is the opposite: methods are chosen at compile time, based on the declared types.
下列代碼的打印結果是1:
int method(String arg) { return 1;}int method(Object arg) { return 2;}Object o = "Object";int result = method(o);println result
在Groovy里,成對的大括號是聲明閉包用的,因此定義數組的語法改用中括號:
int[] array = [1, 2, 3]
Groovy里的閉包,it為默認參數:
Closures may have 1...N arguments, which may be statically typed or untyped. The first parameter is available via an implicit untyped argument named it if no explicit arguments are named. If the caller does not specify any arguments, the first parameter (and, by extension, it) will be null.
That means that a Groovy Closure will always have at least one argument, called it (if not specified otherwise) and it will be null if not given as a parameter.
看個用Groovy讀取本地文件內容的代碼,和Java比起來短小精悍:
我的文件內容:
輸出:
這種方法也行:
完整代碼:
new File('c:\\temp\\1.txt').eachLine('UTF-8') { println "new line->" + it } new File('c:\\temp\\1.txt').withReader('UTF-8') { reader -> reader.eachLine { println "Another line:" + it } }
“怎么用Groovy讀取本地文件的代碼”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。