Print an array in Java

David Y.

The Problem

What is the simplest way to print an array in Java? Passing an array directly to System.out.println produces an object reference rather than a printed representation of the array contents.

class Main { public static void main(String[] args) { String[] products = new String[]{"Coffee", "Tea", "Chocolate Bar"}; System.out.println(products); // will print something like [Ljava.lang.String;@49476842 } }

How can I get the output ["Coffee", "Tea", "Chocolate Bar"] instead?

The Solution

We can print simple arrays in Java using the method Arrays.toString():

import java.util.Arrays; class Main { public static void main(String[] args) { String[] products = new String[]{"Coffee", "Tea", "Chocolate Bar"}; System.out.println(Arrays.toString(products)); // will print ["Coffee", "Tea", "Chocolate Bar"] } }

This will also work for arrays containing non-String types, such as ints or doubles.

If we have an array containing other arrays, or complex custom objects, we will need to use Arrays.deepToString() to print out an accurate representation:

import java.util.Arrays; class Main { public static void main(String[] args) { String[][] productRanges = new String[][]{{"Coffee", "Tea"}, {"Granola Bar", "Chocolate Bar"}}; System.out.println(Arrays.toString(productRanges)); // will print [[Ljava.lang.String;@49476842, [Ljava.lang.String;@78308db1] System.out.println(Arrays.deepToString(productRanges)); // will print [[Coffee, Tea], [Granola Bar, Chocolate Bar]] } }

Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Share on Twitter
Bookmark this page
Ask a questionJoin the discussion

Related Answers

A better experience for your users. An easier life for your developers.

    TwitterGitHubDribbbleLinkedinDiscord
© 2024 • Sentry is a registered Trademark
of Functional Software, Inc.