2012-02-22 119 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