2015-01-04 51 views
-1

這裏是問題 編寫一個方法,該方法生成一個int數組作爲參數,將 生成的整數轉換爲字符並打印新的char數組。 數組值應該在[0 - 255]的範圍內。java整型數組轉換爲ascii並放入char數組

public static void main(String[] args) { 
    char[] array1 = new char [100]; 
    int d; 
    int[] array = getArray(); 
    convert(array,array1); 
    for (int i = 0; i < array.length; i++) { 
     System.out.print(array[i] + " "); 
    } 
    System.out.println(); 
    for (int i = 0; i < 100; i++) { 
     System.out.print(array1[i] + " "); 
    } 
} 

public static int convert(int[] array, char[] array1) { 
    for (int a=0;a<100;a++) { 
     array [a] = toChars(array1[a]); 
    } 
} 

public static int[] getArray() { 
    int[] array = new int[100]; 
    for (int i = 0; i < array.length; i++) { 
     array[i] = (int)(Math.random() * 255); 
    } 
    System.out.println(); 
    return array; 
} 

我遇到了一些問題。我無法將整數轉換爲ASCII碼。應該

for (int a=0;a<100;a++) { 
    array [a] = toChars(array1[a]); 
} 
+2

這是什麼與C編程語言呢? – 2015-01-04 11:11:47

+0

這是jni相關嗎? toChars()? – 2015-01-04 11:12:10

+0

哦,你把整數和字符數組混淆了。適當的變量命名將顯示(加上你可能有一些編譯器錯誤)。 – 2015-01-04 11:13:48

回答

1

你可以做這樣的事情:

public static void convert(int[] array, char[] array1) { 
    int length = array.length; 
    for (int i = 0; i < length; i++) { 
     // this converts a integer into a character 
     array1[i] = (char) array[i]; 
    } 
} 
0

您的轉換方法:我可以用它代替

public static void convert(int[] array, char[] array1) { 
    for (int a = 0; a < 100; a++) { 
     array1[a] = (char) array[a]; 
    } 
} 

只需鍵入投INT爲char。