我在很多地方看过Java代码,人们倾向于在原语int和char之间进行转换。
这有必要吗?他们没有被隐含地转换 对于例如我试过这个并且完全得到了我应该做的。那为什么人们明确地投了?我错过了什么吗?
char a = 'a';
int index = (int) a;
index = 98;
a = 98;
System.out.println(index);
System.out.println(a);
答案 0 :(得分:8)
有时为了清晰起见,人们会为了超载的原因,有时出于无知的原因而进行投射。
例如:
System.out.println((int) a);
将以不同的方式工作
System.out.println(a);
由于超载分辨率。但是根据你给出的确切代码,绝对不是必需的。如果您想确切知道特定开发人员选择编写冗余代码的原因,您需要问他们......
答案 1 :(得分:0)
在这种情况下进行转换可消除歧义,并使代码更易于阅读。