在Java中从char显式转换为int的原因?

时间:2012-10-20 19:29:26

标签: java casting

我在很多地方看过Java代码,人们倾向于在原语int和char之间进行转换。

这有必要吗?他们没有被隐含地转换 对于例如我试过这个并且完全得到了我应该做的。那为什么人们明确地投了?我错过了什么吗?

char a = 'a';
int index = (int) a;
index = 98;
a = 98;
System.out.println(index);
System.out.println(a);

2 个答案:

答案 0 :(得分:8)

有时为了清晰起见,人们会为了超载的原因,有时出于无知的原因而进行投射。

例如:

System.out.println((int) a);

将以不同的方式工作

System.out.println(a);

由于超载分辨率。但是根据你给出的确切代码,绝对不是必需的。如果您想确切知道特定开发人员选择编写冗余代码的原因,您需要问他们......

答案 1 :(得分:0)

在这种情况下进行转换可消除歧义,并使代码更易于阅读。