Java 字符到ascii的转换
我一直在尝试将字符转换为ASCII码。请帮忙,这是我的密码Java 字符到ascii的转换,java,Java,我一直在尝试将字符转换为ASCII码。请帮忙,这是我的密码 import java.util.*; public class CharToAscii { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); System.out.println("ENter the c
import java.util.*;
public class CharToAscii {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("ENter the character you want to convert");
char c = sc.next().charAt(0);
System.out.println(int(c));
}
}
行给出了错误
应通过将类型放在圆括号中来完成。System.out.println((int)(c));
是正确的实现。应该是
System.out.println((int)c)代码>。可能重复:@Aominè得到了答案。您似乎在使用int(c)
,就好像它是一个函数,而它不是。您试图在数据类型之间进行强制转换,为此,在要将数据强制转换到的数据类型周围加上括号。1)我应该指出,此问题的标题和描述不明确。根据代码,您实际上是在尝试将字符转换为ASCII字符代码的十进制表示形式。2) 对于ASCII范围(0x00到0x127)内的字符,数字将是您期望的数字。对其他人来说。。。好字符是严格不可转换的。。。您将看到一个UTF-16代码单元,表示字符或其一部分。期望ASCII存在一个问题。大多数对“输入要转换的字符”提示做出响应的人都不希望限制字符数。有些人可能会用自己的名字打字母,比如“é”或“s”శ్రీ" ()我可能会键入字符“…”或我最喜欢的标点符号“-”或最喜欢的符号“Ermm…”。。。。这忽略了并非所有char
值都映射到ASCII字符的事实。因此,“正确”是夸大其词。
System.out.println((int)(c));