假设我有字节数组:
byte[] arr = new byte[] { 0, 1, 2, 3, 4 };
平台是否具有可用于播放此数组的功能 - 例如,如何反转它(获得4,3,2,1,0)?或者,如何反转它的一部分(2,1,0,3,4)?获取数组(0,1,2,3)的一部分?
我知道我可以手动编写函数,但我很好奇,如果我在平台上缺少有用的函数函数,我应该知道(并且找不到任何有用的指南使用谷歌)。
谢谢!
答案 0 :(得分:2)
Arrays类中有一些静态方法(我不知道dalvik / android的可用性)
答案 1 :(得分:1)
java.util.Arrays
包含几个辅助方法(sort()
,equals()
,fill()
,toString()
)。如果这还不够,您可以将byte
原语转换为Byte
对象(创建一个新数组)并使用new ArrayList (Arrays.asList())
获取可以使用多种方法修改的集合来自java.util.Collections
。
如果你在RT之外看,有Commons Primitives:
Commons Primitives提供了一个专门设计用于原始类型的集合和实用程序库。
另一个选项是guava-libraries项目,它也支持基元:
该项目包含我们在无数Java项目中使用的几个Google核心Java库。
答案 2 :(得分:1)
java.util.Arrays
在标准API中有一些与数组相关的实用程序方法。来自Apache Commons Lang的ArrayUtils
还有更多。
但是请注意,Java没有将数组切片的概念作为“视图”,即这种方法返回的“数组的一部分”将始终是副本。