Java可能的从int到字节的有损转换错误

Java可能的从int到字节的有损转换错误,java,netbeans,int,byte,Java,Netbeans,Int,Byte,这是在我从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]); 及 及 所有这些错误都

这是在我从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]);

所有这些错误都归为同一类。我到底做错了什么?您能帮我修复代码并告诉我区别吗?

“从int到byte的可能有损转换”意味着代码的某些部分需要一个字节,而您正在传递一个int。字节是8位,int是32位,因此进行此转换可能会丢失信息

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

现在您知道了消息的含义,您应该能够遍历代码并检查这些转换发生的位置。

为声明为
字节的(相关)参数添加
(字节)
强制转换。如果我们假设代码最初是工作的,那么
(byte)
强制转换可能在原始代码中。。。
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);