Java 类型提升后的价值如何?
在一个类型提升示例中,我得到的输出为515 我知道char c的值在提升为int之后是'a';但是当把char提升到int时,它的值是由什么系统决定的呢 c转换为其ASCII值97Java 类型提升后的价值如何?,java,type-promotion,Java,Type Promotion,在一个类型提升示例中,我得到的输出为515 我知道char c的值在提升为int之后是'a';但是当把char提升到int时,它的值是由什么系统决定的呢 c转换为其ASCII值97 因此,50000/97~=515因为整数除法,结果中没有浮小数。@Joiner关于堆栈溢出,格式化不是什么大问题,实际上一个人的观点或答案必须是正确的!此外,我在这个答案中没有找到任何格式不好的原因,因为我试图保持更少和更干净!我希望这个理由不能被否决!我想,你想知道的是。可以找到“a”的值。在这里,该值被提升到更高
因此,50000/97~=515因为整数除法,结果中没有浮小数。@Joiner关于堆栈溢出,格式化不是什么大问题,实际上一个人的观点或答案必须是正确的!此外,我在这个答案中没有找到任何格式不好的原因,因为我试图保持更少和更干净!我希望这个理由不能被否决!我想,你想知道的是。可以找到“a”的值。在这里,该值被提升到更高的一字节>字符>整数>长>浮点>双精度,这是必须始终使用的方法。那么,为什么在函数重载的情况下,它会被提升到更高的一字节>字符>整数>长>浮点>双精度?反之亦然?例如:-'class OverloadDemo{void testint a{System.out.printlna:+a;}公共静态void mainString args[]{OverloadDemo ob=new OverloadDemo;ob.test10l;}'在这里,int值也应该提升为long,不是吗?尽管反之亦然
public class Main {
public static void main(String args[]) {
char c = 'a';
int i = 50000;
int result = i / c;
System.out.println("i / c is " + result);
}
}