Java Print Text - Complete Guide
Printing Text in Java
Printing text is one of the most fundamental operations in Java programming. It is widely used for debugging, user interaction, and displaying results.
Java provides multiple methods for outputting text, such as concatenation, formatting, and multi-line text handling.
String Concatenation
You can combine strings and variables using the + operator, or the concat() method.
Example
public class TextPrinting {
public static void main(String[] args) {
String firstName = "John";
String lastName = "Doe";
// Basic concatenation
System.out.println("Hello, " + firstName + " " + lastName + "!");
// Multi-line concatenation
String message = "This is a long message that " +
"spans multiple lines using " +
"concatenation operator.";
System.out.println(message);
// Using concat() method
String greeting = "Welcome, ".concat(firstName);
System.out.println(greeting);
}
}
Output
Hello, John Doe! This is a long message that spans multiple lines using concatenation operator. Welcome, John
Text Formatting Techniques
Java provides printf and format for aligning and structuring text output, useful for tabular data.
Example
public class TextFormatting {
public static void main(String[] args) {
String product = "Java Book";
double price = 49.99;
int quantity = 3;
// Using printf for formatted output
System.out.printf("Product: %-15s Price: $%.2f Quantity: %d%n",
product, price, quantity);
// Creating aligned columns
System.out.println("\nItem List:");
System.out.printf("%-20s %-10s %-8s%n", "Product", "Price", "Qty");
System.out.printf("%-20s $%-9.2f %-8d%n", "Java Programming", 59.99, 2);
System.out.printf("%-20s $%-9.2f %-8d%n", "Python Basics", 39.99, 5);
System.out.printf("%-20s $%-9.2f %-8d%n", "C++ Advanced", 69.99, 1);
}
}
Output
Product: Java Book Price: $49.99 Quantity: 3 Item List: Product Price Qty Java Programming $59.99 2 Python Basics $39.99 5 C++ Advanced $69.99 1
Multi-line Text Output
For multi-line text, Java supports text blocks (Java 15+) or escape sequences. StringBuilder can also be used for constructing dynamic multi-line text.
Example
public class MultiLineText {
public static void main(String[] args) {
// Using text blocks (Java 15+)
String textBlock = """
This is a text block
that spans multiple lines
without needing escape sequences
or concatenation operators.
""";
System.out.println(textBlock);
// Traditional approach with escape sequences
System.out.println("Line 1\nLine 2\nLine 3");
// Building multi-line text using StringBuilder
StringBuilder multiLine = new StringBuilder();
multiLine.append("First line\n")
.append("Second line\n")
.append("Third line");
System.out.println(multiLine.toString());
}
}
Output
This is a text block that spans multiple lines without needing escape sequences or concatenation operators. Line 1 Line 2 Line 3 First line Second line Third line