Parfois, il est nécessaire d'imprimer les informations sur les tableaux dans le développement Java. Voici plusieurs façons d'imprimer des tableaux : (comme suit)
La méthode la plus simple consiste à parcourir et à imprimer un par un.
Remarque : s'il s'agit d'un tableau multidimensionnel, vous pouvez l'imprimer en utilisant plusieurs niveaux pour l'imbrication de boucles.
Tableau unidimensionnel :
public static void main(String[] args) { int[] arr = new int[]{0,1,2,3,4,5,6,7,8,9}; // 普通for循环打印 System.out.println("普通for循环打印:"); for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + "、"); } System.out.println(); // 换行 // 增强for循环打印 System.out.println("增强for循环打印:"); for (int num : arr) { System.out.print(num + "、"); } }
Tableau bidimensionnel :
public static void main(String[] args) { int[][] arr = new int[][] {{1,2},{2,3},{3,4},{4,5},{5,6}};// 二维数组 for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr[i].length; j++) { System.out.print(arr[i][j] + "、"); } } }
Pour un tableau unidimensionnel, vous pouvez utiliser la méthode Arrays.toString() , qui prend en charge la conversion de n'importe quel type. Pour convertir un tableau de type en chaîne, le code est le suivant :
public static void main(String[] args) { int[] arr = new int[]{0,1,2,3,4,5,6,7,8,9}; //使用Array.toString() System.out.println(Arrays.toString(arr)); }
Mais pour les tableaux multidimensionnels, l'utilisation de Arrays.toString() provoquera le même problème que lors de l'impression directe du nom de la variable du tableau. , et la valeur de l'adresse sera imprimée. À ce stade, vous devez utiliser la méthode Arrays.deepToString(), comme indiqué ci-dessous :
Java n'utilisera pas de tableaux multidimensionnels, tout au plus bidimensionnels, car Java utilisera des tableaux orientés objet
public static void main(String[] args) { int[][] arr = new int[][] {{1,2},{2,3},{3,4},{4,5},{5,6}};// 二维数组 //使用Arrays.deepToString() System.out.println(Arrays.deepToString(arr)); }
Unidimensionnelle les tableaux utilisent la méthode Arrays.toString (), les tableaux multidimensionnels utilisent la méthode Arrays.deepToString()
Cette méthode consiste à convertir le tableau en liste
Les points suivants doivent à noter :
(1) Cette méthode n'est pas applicable Basée sur les types de données de base
(byte, short, int, long, float, double, boolean), mais vous pouvez utiliser des classes d'encapsulation de types de données de base. Par exemple, la classe d'encapsulation Integer de int. (Le tableau d'objets est également valide)
(2) Cette méthode lie le tableau et la liste Lorsque l'un d'eux est mis à jour, l'autre est automatiquement mis à jour
(3) Le. Les méthodes d'ajout et de suppression ne sont pas prises en charge
public static void main(String[] args) { int[] arr = new int[]{0,1,2,3,4,5,6,7,8,9}; System.out.println(Arrays.asList(arr)); //打印结果:[[I@140e19d] }
public static void main(String[] args) { Integer[] arr = new Integer[]{0,1,2,3,4,5,6,7,8,9}; System.out.println(Arrays.asList(arr)); //打印结果:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] }
Manière simple
Byte[] bs = {0x0F, 0x1F, 0x2F, 0x3F, 0x4F, 0x5F, 0x6F}; System.out.println(Arrays.toString(bs));
// Imprimer les résultats de sortie
[15, 31, 47, 63, 79, 95, 111]
Plus polyvalent Un peu de chemin
byte[] bs = hexStringToByteArray("e04fd020ea3a6910a2d808002b30309d"); System.out.println(Arrays.toString(bs)); /** * 将String转换为byte[] * @param s String * @return byte[] */ public static byte[] hexStringToByteArray(String s) { int len = s.length(); byte[] data = new byte[len / 2]; for (int i = 0; i < len; i += 2) { data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4) + Character.digit(s.charAt(i + 1), 16)); } return data; }
//Imprimer le résultat de sortie
[-32, 79, -48, 32, -22, 58, 105, 16, -94, -40, 8, 0 , 43, 48, 48, - 99]
byte[] bs = "你好,这是一段字符串!".getBytes(); System.out.println(Arrays.toString(bs));
//Résultat de sortie d'impression
[-28, -67, -96, -27, -91, -67, -17, -68 , -116, -24, -65, -103, -26, -104, -81, -28, -72, -128, -26, -82, -75, -27, -83, -105, - 25, -84, -90, -28, -72, -78, -17, -68, -127]
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!