2012-03-06 98 views
0

我的Java代码出现问题,基本上我想这样做;将整数转换为字符

char letter = 'a'; 
char convertedletter = letter + 5; 
System.out.print(convertedletter); 

输出应该是f,但输出我得到的是108。我怎么能使它成为f

+1

您的代码不编译。 – Caner 2012-03-06 12:16:30

回答

4

试试这个:

char letter = 'a'; 
char convertedletter; 
convertedletter = (char) (letter + 5); 
System.out.print(convertedletter); 

操作符“+”用于添加数字或连接字符串,因为你正在使用它丝毫一个char(只有一个字符)和INT它会返回一个INT,除非你把它转换成char就是你想要的。

+0

感谢您的回答!真的很感激它,真的需要答案,因为我已经接近我的项目的最后期限。再次感谢! – marchemike 2012-03-06 11:55:11

+0

@MichaelEvangelista然后接受这个答案。 – 2012-03-06 12:01:52

0

添加时应该有cast。由于5是整数,convertedletter地转化为整数,因此你会得到108个输出的“一”是103

ASCII值使用应该有

char convertedletter = (char) (letter + 5); 

又看了thisthis获取更多信息。

0

试试这个:

char convertedletter = (char) (letter + 5);