有人问我这两个方法参数之间的区别是什么,以及为什么要在特定分配的数组上使用 ...。
putMessage(byte ...send)
putMessage(byte[] send)
我无法自信地回答他们,也记不起……叫什么了。
最佳答案
第一个示例中的 ...
称为 varargs .你的第二个例子有一个数组参数。当您想要将可变数量的参数硬编码到一个方法但又不想手动创建一个数组来保存它们时,Varargs 很方便。这是一个速记符号。考虑一下:
putMessage(0b00100101, 0b00100101, 0b00100101); // varargs
对比这个:
putMessage(new byte[] { 0b00100101, 0b00100101, 0b00100101 }); // array
第一个示例不那么困惑且更具可读性。
关于java - Java 方法中 byte[] 和 byte ... 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7637893/