我正在将一个进程移植到Java上,已经有了C#和C++的工作版本。
在C#中,我使用Marshal.Copy(...)将64个ulong转换为512个字节,在C++中,我使用memmove(...)执行同样的操作。在Java中有什么方法可以实现相同的结果?我需要以字节而不是longs的方式按相同顺序获取相同的二进制信息。
编辑:
我之所以要将其移植到Java上,是为了利用Java天然的可移植性。我不想使用本机代码。
另外一件事。由于Java不包含无符号值,因此我需要稍微改变我的请求。我想获取每个64个长整型(C#和C++中的ulong)中的8个无符号字节值,以便稍后将这些值用作数组中的索引。这需要重复进行数千次,因此最快的方法是最好的方法。