我试图在java中将字符值转换为ASCII值.以下是我的代码.
public class test {
public static void main(String[] args)
{
System.out.println("Enter the string to be converted");
Scanner input = new Scanner(System.in);
String str =input.nextLine();
char ch[]=str.toCharArray();//hello
for(int i =0;i<str.length();i++)
{
char ascii[i]=ch[i];
System.out.println((int)ascii[i]);
}
input.close();
}
}
Run Code Online (Sandbox Code Playgroud)
我想从用户那里获取字符串,并将其存储在一个数组(我正在进行ch[])中,对于数组中的每个元素,我想打印其对应的ASCII值.
但是在char ascii[i]=ch[i];口译处,翻译正在讲述Type mismatch: cannot convert from char to char[].
问题出在哪儿 ?因为我的两个字符初始化都是数组,那为什么它告诉它的类型不匹配?
注意:我希望ascii变量只存储为数组.
您无法将a指定char给char数组.
更改
for(int i =0;i<str.length();i++)
{
char ascii[i]=ch[i];
System.out.println((int)ascii[i]);
}
Run Code Online (Sandbox Code Playgroud)
至
for(int i =0;i<str.length();i++)
{
char ascii = ch[i];
System.out.println((int)ascii);
}
Run Code Online (Sandbox Code Playgroud)
编辑:
如果您希望将输出存储在数组中,则应在循环之前声明数组:
char[] ascii = new char[str.length()];
for(int i =0;i<str.length();i++)
{
ascii[i] = ch[i];
System.out.println((int)ascii[i]);
}
Run Code Online (Sandbox Code Playgroud)