【发布时间】:2017-03-21 12:21:02
【问题描述】:
我一直在尝试将 char 'F' 附加到 java 程序中为 1 的 int 但当我这样做时输出为 71。我知道它使用 F 的 ASCII 值 70 然后添加 1 产生71. 但是,我尝试了不同的类型转换尝试,但不能让它产生 1F 而不是 71?感谢您提供任何和所有帮助。
我的代码如下:
public boolean enqueue(int item){
int first = (char) 'F';
int comb = (char) (item + first);
if(currentSize[0] < 6 || currentSize[1] < 6 || currentSize[2] < 6){
if(currentSize[0] <= currentSize[1] && currentSize[0] <= currentSize[2]){
Customers[0][back[0]] = comb; //code I am trying to get to produce 1F
back[0]++;
currentSize[0]++;
if (currentSize[0] == 6)
back[0] = 0;
else if(back[0] == 6)
back[0] = 0;
}
--麦克
【问题讨论】:
-
在添加之前将数字转换为字符串。
-
你把我弄糊涂了:你是说你想让 1 + 'F' 成为 1F 吗?如果有,为什么?
-
1F是 int 的十六进制(以 16 为底)表示。由于十六进制数字只能是 0–9 和 A–F,因此使用 int 表示任意数字和字符对不太可能按您期望的方式工作。只需创建一个包含两个字段的简单类即可。