java可以直接使用*运算符将两个字节相乘吗 6 月,2 周 Questions & Answers 2731 我需要对字节 (2*x*x)+x 执行以下操作,其中x是单个字节。我可以像对int那样直接执行该操作吗?如果否,我们如何执行上述操作
# 3 楼答案 对 Java整数算法是两个补码;这意味着(只要有足够的位来写下值)长度或缩短字段不会影响结果 注1:检查溢出。如果结果不在128/-127范围内,它将不适合一个字节(或255/0表示无符号) 注2:Float和double不是整数运算的一部分
# 1 楼答案
显然,您认为运算符存在是因为编译器允许它,但您不相信JVM会正确计算结果。为什么?
这有多难测试?每个字节只有256个值
# 2 楼答案
你试过以下方法吗
作为练习,我建议您打印出每个可能字节值的结果,看看是否得到预期值。只有256个可能的字节值
# 3 楼答案
对
Java整数算法是两个补码;这意味着(只要有足够的位来写下值)长度或缩短字段不会影响结果
注1:检查溢出。如果结果不在128/-127范围内,它将不适合一个字节(或255/0表示无符号)
注2:Float和double不是整数运算的一部分