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

时间:2014-06-11 03:31:21

标签: 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]);

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);

所有这些错误都归为同一类。我究竟做错了什么?你能帮我解决一下代码并告诉我差异吗?

1 个答案:

答案 0 :(得分:2)

"可能从int转换为字节"意味着你的代码的某些部分想要一个字节,并且你传递一个int。字节数为8位且为32位,因此通过执行此转换可能会丢失信息。

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

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