Как вывести в консоль массив java

Как вывести в консоль массив java

for (int value : arr) { System.out.print(value + » «); }

Пример:

int[] числа = {10, 20, 30, 40, 50};
for (int i = 0; i < числа.length; i++) {
System.out.println(числа[i]);
}

Метод System.out.println печатает каждый элемент массива на новой строке. Индекс i начинается с нуля и увеличивается до значения числа.length - 1, что гарантирует охват всех элементов без выхода за границы массива.

Если требуется вывести значения в одной строке, можно использовать System.out.print и добавить пробел:

for (int i = 0; i < числа.length; i++) {
System.out.print(числа[i] + " ");
}

Печать массива с использованием Arrays.toString()

Печать массива с использованием Arrays.toString()

Пример использования:

import java.util.Arrays;
int[] числа = {1, 2, 3, 4, 5};
System.out.println(Arrays.toString(числа));

Результат: [1, 2, 3, 4, 5]. Это удобно для быстрой проверки содержимого массива без написания цикла.

Метод поддерживает только одномерные массивы. При попытке передать многомерный массив, например int[][], будет напечатан его внутренний адрес, а не содержимое. В таких случаях следует использовать Arrays.deepToString().

Как вывести двумерный массив в консоль

Как вывести двумерный массив в консоль

int[][] array = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
for (int i = 0; i < array.length; i++) {
if (array[i] != null) {
for (int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j] + " ");
}
}
System.out.println();
}
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.printf("%4d", array[i][j]);
}
System.out.println();
}

Для массивов других типов (например, String[][]) принцип тот же:

String[][] data = {
{"A", "B"},
{"C", "D"},
{"E", "F"}
};
for (int i = 0; i < data.length; i++) {
for (int j = 0; j < data[i].length; j++) {
System.out.print(data[i][j] + "\t");
}
System.out.println();
}
  • Числа с фиксированной шириной:
    System.out.printf("%5d", value); – выведет целое число в поле шириной 5 символов, добавляя пробелы слева.
  • Десятичные числа:
    System.out.printf("%.2f", value); – округление до двух знаков после запятой.
  • Выравнивание по левому краю:
    System.out.printf("%-10s", text); – строка выравнивается по левому краю в поле шириной 10 символов.
int[] numbers = {12, 345, 6, 78};
for (int num : numbers) {
System.out.printf("%4d", num);
}

Форматирование строк можно комбинировать с циклами:

String[] names = {"Анна", "Игорь", "Светлана"};
for (String name : names) {
System.out.printf("| %-10s |\n", name);
}

Для объединения форматированных элементов в одну строку:

String result = Arrays.stream(numbers)
.mapToObj(n -> String.format("%03d", n))
.collect(Collectors.joining(" - "));
System.out.println(result);

Результат: 012 - 345 - 006 - 078

Печать массива с использованием Stream API

Печать массива с использованием Stream API

Для массивов примитивных типов, таких как int[], используйте класс Arrays и метод stream():

int[] numbers = {1, 2, 3, 4};
Arrays.stream(numbers).forEach(System.out::println);

Для массивов объектов, например String[], применяется Stream.of():

String[] words = {"Java", "Stream", "API"};
Stream.of(words).forEach(System.out::println);

Чтобы напечатать элементы в одну строку с разделителем, используйте Collectors.joining():

Чтобы напечатать элементы в одну строку с разделителем, используйте undefinedCollectors.joining()</code>:»></p>
<p><code>String result = Stream.of(words).collect(Collectors.joining( System.out.println(result);

Для числовых массивов с форматированием применяйте mapToObj():

double[] values = {1.1, 2.2, 3.3};
Arrays.stream(values)
    .mapToObj(v -> String.format("%.1f", v))
    .forEach(System.out::println);

String[] words = {"Hello", "World", "Java"};
System.out.println(Arrays.toString(words));

Однако если элементы массива – это пользовательские объекты, результат будет зависеть от реализации метода toString() в классе этих объектов. Если метод не переопределён, по умолчанию будет выведено название класса и хеш-код объекта.

class Person {
String name;
int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Person{name='" + name + "', age=" + age + "}";
}
}
Person[] people = {
new Person("Alice", 30),
new Person("Bob", 25)
};
System.out.println(Arrays.toString(people));

Если вы хотите вывести каждый объект массива на отдельной строке, используйте цикл:

for (Person person : people) {
System.out.println(person);
}

Если вам необходимо вывести только некоторые свойства объектов, например, имя и возраст, вы можете определить метод в классе, который будет возвращать нужную информацию в нужном формате, а затем вывести массив с помощью цикла:

for (Person person : people) {
System.out.println(person.getName() + ", " + person.getAge());
}
  • Для проверки на null используйте простое условие:
    if (array != null)
  • Для проверки на пустоту достаточно сравнения длины:
    if (array.length > 0)

Рекомендуется объединить проверки в одну конструкцию:


if (array != null && array.length > 0) {
System.out.println(Arrays.toString(array));
} else {
System.out.println("Массив пуст или не инициализирован");
}

При использовании методов, таких как Arrays.toString() или Arrays.deepToString(), передаваемый аргумент должен быть проверен заранее. Эти методы не обрабатывают null и выбросят исключение.

При использовании методов, таких как undefinedArrays.toString()</code> или <code>Arrays.deepToString()</code>, передаваемый аргумент должен быть проверен заранее. Эти методы не обрабатывают <code>null</code> и выбросят исключение.»></p>
<pre><code>
public static void printArray(int[] array) {
if (array == null || array.length == 0) {
System.out.println(

Такой подход предотвращает ошибки во время выполнения и делает поведение кода предсказуемым.

Вопрос-ответ:

Ссылка на основную публикацию