我正在从 Jay Bryant 的书 - Java 7 for Absolute Beginners 中学习 Java。在第 164 页上有一个特定的示例,他使用以下特定方法阅读然后反转文本文件的内容:
private static void reverseByteArray(byte[] inBytes) {
int inLength = inBytes.length;
for (int i = 0; i < (inLength >>1); i++) {
byte temp = inBytes[i];
inBytes[i] = inBytes[inLength - i - 1];
inBytes[inLength - i - 1] = temp;
}
}
我的问题是,对于 (int i = 0; i < (inLength >>1) ; i++) {
- 它在整个反转文本内容的操作中的作用是什么?
我相信我理解了for循环下的后续代码,即将第一个字节的值与最后一个字节的值交换。
如果不存在按位移位运算符,则输出不会反转。
初始:睡觉:可能做梦:是的,问题来了;因为在那死亡的沉睡中,梦想可能会到来当我们摆脱了这凡人的缠绕时,必须让我们停下来:有一种尊重使如此漫长的生命成为灾难
输出: efil gnol os fo ytimalac sekam tahT tcepser eht s'ereht :esuap su evig tsuM ,lioc latrom siht ffo delffuhs evah ew nehW emoc yam smaerd tahw htaed fo skins taht ni roF ;bur eht s'ereht , ya emah: : 剥皮
谢谢你。