Java可能从int转换为字节错误

当我从jar文件反编译一些类时发生了这种情况。 这是我无法解决的唯一错误。

所有这些错误都是“从int到byte的可能有损转换”。

this.onDemandFetcher.method563(1, 2, i2); this.worldController.method291(i1, j, i, -119); this.method563(2, 3, this.mapIndices3[k]); this.method563(2, 3, this.mapIndices2[k]); 

 public boolean method286(final int j, final int k, final Animable class30_sub2_sub4, final int l, final int i1, final int j1, final int k1, final int l1, final int i2, final int j2, final int k2) { return class30_sub2_sub4 == null || this.method287(j, l1, k2, i2 - l1 + 1, i1 - k2 + 1, j1, k, k1, class30_sub2_sub4, l, true, j2, 0); } 

 return this.method287(i, l2, i2, j2 - l2 + 1, k2 - i2 + 1, k1, i1, k, class30_sub2_sub4, j, true, l, 0); 

所有这些错误都被归类为同一个错误。 我究竟做错了什么? 你能为我修好代码并告诉我不同​​之处吗?

“从int到byte的可能有损转换”意味着代码的某些部分需要一个字节,并且您将它传递给int。 字节数为8位且为32位,因此通过执行此转换可能会丢失信息。

你还没有发布足够的代码来知道,但它可能在方法287的参数中。 如果它想要字节,那么传递int变量将触发此错误。 您还应该记住,默认情况下整数常量是整数 – 如果需要,可以将它们转换为字节。

现在您知道消息意味着您应该能够查看代码并检查这些转换发生的位置。