[英]How to convert a negative integer value into char datatype
我正在尝试使用基于char的堆栈来解决后缀表达式。
我需要将一些负值压入基于char的堆栈中,例如'-2'
但它仅存储'-'
部分。
我的确切代码如下所示:
char val=Character.forDigit(operation(temp),10);
System.out.println("pushed is "+val);
输出为"pushed is - "
请帮助。
字符类是单数。 就像一个字符一样,一个数字,因此只能得到“ -2”的第一个字符。
请参阅此内容以获得更完整的解释: Java中“ char”和“ String”之间的区别
char
表示它由任何特定语言的受支持字符中的1个字符组成。 -2
不是1个字符,而是一个string
因为它由字符序列组成,例如'-'
和'1'
。 因此,您的代码正在做正确的事情。
现在,假设您确实需要字符来存储数字,那么就必须将负值映射到其他一些字符上。 从0..9
数字实际上是ascci# 48..57
。 因此,您可以做的是从ascci表中连续图片10个字符,并将它们视为-ve。 假设您选择一个.. i作为您的-ve数字,然后a = -1,b = -2,依此类推...
请记住,由于您正在使用字符,因此只要将每个数字视为一个字符,就不能处理两位数字。 然后,您必须处理所有“十进制”操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.