Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 双整数转换_Java_Casting_Type Conversion - Fatal编程技术网

Java 双整数转换

Java 双整数转换,java,casting,type-conversion,Java,Casting,Type Conversion,当我尝试乘以2个int值时,我不知道为什么这个代码段会产生以下输出。这可能太愚蠢了,但我就是不明白。我已经在这里粘贴了代码和输出 public static void main(String[] args) { // TODO code application logic here String numstring = "12122"; char[] numArray = numstring.toCharArray(); int num =0; int i

当我尝试乘以2个int值时,我不知道为什么这个代码段会产生以下输出。这可能太愚蠢了,但我就是不明白。我已经在这里粘贴了代码和输出

public static void main(String[] args) {
    // TODO code application logic here
    String numstring = "12122";
    char[] numArray = numstring.toCharArray();
    int num =0;
    int index = 10;
    int count = 0;
    for(int i=numArray.length-1;i>=0;i--){
      int ind = (int)(Math.pow(index,count));
      System.out.print(numArray[i]+"*"+ind);
      System.out.println(" prints as ----->"+numArray[i]*ind);
      count++;
    }
}
输出:

    2*1 prints as ----->50
    2*10 prints as ----->500
    1*100 prints as ----->4900
    2*1000 prints as ----->50000
    1*10000 prints as ----->490000

字符实际上是隐藏的整数,因此,例如,字符“2”的整数值为50

要查看哪个整数对应于哪个字符,请查看

若要执行所需操作,应使用以下方法:


你不是在乘以两个整数。将
int
,ind与
char
'2'
,其ASCII值为
50
(至少在第一种情况下)相乘。您可以使用
int[]
,或者如果您想继续使用
char[]
,您可以执行以下操作:

System.out.println(" prints as ----->"+ Character.getNumericValue(numArray[i]) * ind);

呃…我讨厌我自己…谢谢你指出这一点
System.out.println(" prints as ----->"+ Character.getNumericValue(numArray[i]) * ind);