我有字符串名称= "admin"; 然后我做String charValue = name.substring(0,1);/ / charValue = " "
我想将charValue转换为它的ASCII值(97),我如何在java中做到这一点?
我有字符串名称= "admin"; 然后我做String charValue = name.substring(0,1);/ / charValue = " "
我想将charValue转换为它的ASCII值(97),我如何在java中做到这一点?
当前回答
而不是这样:
String char = name.substring(0,1); //char="a"
您应该使用charAt()方法。
char c = name.charAt(0); // c='a'
int ascii = (int)c;
其他回答
public class Ascii {
public static void main(String [] args){
String a=args[0];
char [] z=a.toCharArray();
for(int i=0;i<z.length;i++){
System.out.println((int)z[i]);
}
}
}
而不是这样:
String char = name.substring(0,1); //char="a"
您应该使用charAt()方法。
char c = name.charAt(0); // c='a'
int ascii = (int)c;
非常简单。只需将char类型转换为int类型。
char character = 'a';
int ascii = (int) character;
在本例中,您需要首先从String中获取特定的字符,然后强制转换它。
char character = name.charAt(0); // This gives the character 'a'
int ascii = (int) character; // ascii is now 97.
虽然没有明确要求强制转换,但它提高了可读性。
int ascii = character; // Even this will do the trick.
不使用额外int变量的一行解决方案:
String name = "admin";
System.out.println((int)name.charAt(0));
如果你想要一个字符串中所有字符的ASCII值。你可以用这个:
String a ="asdasd";
int count =0;
for(int i : a.toCharArray())
count+=i;
如果你想要字符串中单个字符的ASCII码,你可以使用:
(int)a.charAt(index);