我正在制作一个小型的Java程序,用于加密任何类型的文件。我的做法是:打开输入文件,将其读入一个与该文件大小相同的字节数组中,然后进行编码,并将整个数组写入名为output.dat的.dat文件中。为了对字节数组进行索引,我使用了一个int类型的变量。代码如下:
for(int i : arr) {
if(i>0) {
arr[i] = arr[i-1]^arr[i];
}
}
'arr'是一个字节数组,大小与输入文件相同。
我遇到的错误:CodingEvent.java:42: 错误:可能会丢失精度
arr[i] = arr[i-1]^arr[i];
(箭头指向^运算符)
需要类型:byte
找到类型:int
怎么了?能帮我吗?