当前位置: 首页 > 面试题库 >

在Java中将int转换为char

董和风
2023-03-14
问题内容

下面是一个代码片段,

int a = 1;
char b = (char) a;
System.out.println(b);

但是我得到的是空输出。

int a = '1';
char b = (char) a;
System.out.println(b);

我将得到1作为输出。

有人可以解释吗?如果我想像第一个代码片段一样将int转换为char,该怎么办?


问题答案:
int a = 1;
char b = (char) a;
System.out.println(b);

会打印出ascii值为1的字符(首字符,这是不可打印的)。

int a = '1';
char b = (char) a;
System.out.println(b);

将以ascii值49输出一个字符(一个对应于“ 1”)

如果要转换数字(0-9),则可以将数字加48并进行转换,例如Character.forDigit(a, 10);。

如果要转换int as asi的ascii值,可以使用Character.toChars(48)例如。



 类似资料:
  • 下面是一段代码片段, 但我得到的是空输出。 我将得到1作为输出。 有人能解释一下吗?如果我想像第一个代码片段那样将int转换成char,我应该怎么做?

  • 问题内容: 我是Java的新手,想知道double转换为int cast如何工作吗?我知道,只需将低32位转换为int就很容易了,但是将double(64位)转换为int(32位)呢?来自二进制的double中的那64位是Double- precision浮点格式(Mantissa),那么它如何在内部转换为int? 问题答案: 所有这些都记录在JLS的5.1.3节中。 第一步,将浮点数转换为lon

  • 我正在使用将整数作为输入参数的第三方服务器。但是,当查询我再次编写的值时,它似乎使用数字的最左边的位作为符号。因此,1000...0(16 位)将返回为 -32768,11000...0 将返回为 -16384,依此类推。 鉴于Java不知道uints,我正在寻找一种有效的方法将负数转换为正确的正数(第一个是2^15,第二个是2^ 15 2^24,依此类推)。

  • 问题内容: (我是Java编程的新手) 我有例如: 我需要在撇号中得到数字9本身。我尝试执行以下操作 但这没用。 那么我该怎么做才能得到撇号呢? 问题答案: ASCII表的排列方式是使字符的值比的值大九;字符的值比的值大8 ; 等等。 因此,您可以通过减去以获得十进制数字char的int值。

  • 问题内容: 我正在尝试将int []转换为bytes。它也被转换。 我的转换代码是这样的。 假设我输入一个int [] = {10,11,15,41,12,8,4,23,5,17,23,36,6}现在我希望字节数组像这样{10,0 ,0,0,11,0,0,0,15,0,0,0,41,0,0,0,12,0,0,0,8,0,0,0,4,0,0 ,0,23,0,0,0,5,0,0,0,17,0,0,0,

  • 问题内容: 我有一个以网络字节顺序包含IP地址的地址,我想将其转换为对象。我看到有一个采用的构造函数,是否有必要将转换为第一个,还是有其他方法? 问题答案: 这应该工作: 您可能需要交换字节数组的顺序,但我无法弄清楚是否会以正确的顺序生成该数组。