2012-02-22 121 views
3

只是想了解一個行的代碼拷貝一個文件:什麼是<<運算符?

new File("c:\\test") << new File("c:\\test\\newtest").bytes 

什麼是<<稱爲?

回答

6

它的代碼left shift operator

該行是調用File.leftShift(byte[] bytes)(文檔here),所以寫從newtest字節到test

+0

在這種情況下被重寫操作? – 2012-02-22 16:26:16

+1

是的,Groovy喜歡操作符重載。 [本文來自2005](http://www.ibm.com/developerworks/java/library/j-pg10255/index.html),但仍然相當不錯。 – 2012-02-22 16:30:25

+1

是的,它被Groovy JDK對File類的擴展覆蓋http://groovy.codehaus.org/groovy-jdk/java/io/File.html#leftShift(byte []) – 2012-02-22 16:30:35