我一直在尝试将一个字符'F'附加到一个java程序中的int为1但是当我这样做时输出是71.我知道它使用的是F的值为70的ASCII值,然后添加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;
}
- 麦克
答案 0 :(得分:2)
一种可能的解决方案是将整数转换为字符串,然后再将它们组合为Carcigenicate。
这看起来像
int item = 1;
char first = 'F';
String comb = Integer.toString(item) + first;
答案 1 :(得分:0)
我认为这可能会有所帮助。 首先,您不必将'F'字符强制转换。
Sencond,将变量梳子的类型更改为String。
这是代码。
int first = 'F';
int item = 1;
String comb = item + Character.toString((char)first);
System.out.println(comb) // 1F
答案 2 :(得分:0)
目前还不完全清楚你想要什么,但我希望这有点帮助:
int变量只能保存数字值而不能保存字符。 char(字符)基本上也包含数值。 char是0到255之间的值(1个字节)。但这些数字代表特定的符号。你应该看一下ASCII-table。
如果你想在一个变量中保存“1F”,你应该使用一个字符串,或者如果你想坚持使用字符,那就取一个char数组。
e.g:
public boolean enqueue(int item){
char first = 'F';
String comb = String.valueOf(item) + first;
//After this comb is: "1F" if item is 1
...
答案 3 :(得分:0)
您可以使用以下代码获得所需的结果。
public class Question02 {
public static void main(String[] args) {
enqueue(1);
}
public static void enqueue(int item) {
char first = 'F';
String comb = new Integer(item).toString().concat(new Character(first).toString());
System.out.println(comb);
}
}
答案 4 :(得分:-2)
我并不完全知道你想要实现的目标,但如果你已经尝试过铸造和填充物,为什么不制作字符串并将其连接起来?