Console. Java programs often write to the console window. We use System.out—we read input, and write output, with this stream. And this fills many program requirements.
We can use println with no argument for a blank line. Different argument types, like arrays, strings, and ints are supported. The methods are versatile.
Println. This example uses the println and print methods. The println method adds a newline to the end of any output. It can even be used with no argument—this outputs only a newline.
Here The first line is printed. The characters "A" and "B" are printed on the same line. And on the final line "C" is printed.
public class Program {
public static void main(String[] args) {
System.out.println("Print line");
System.out.print("A");
System.out.print("B");
System.out.println();
System.out.println("C");
}
}Print line
AB
C
Char array. The print and println methods on System.out can receive a char array. This can avoid conversions—if we have a char array, we can print it directly.
public class Program {
public static void main(String[] args) {
char[] array = new char[3];
array[0] = 'a';
array[1] = 'b';
array[2] = 'c';
// Print a char array.
System.out.println(array);
}
}abc
Ints. For primitive types like ints, chars and doubles we do not need to convert before using print and println. There are overloads that handle these types directly.
public class Program {
public static void main(String[] args) {
// Print ints directly, no conversion needed.
int value = 10;
System.out.println(value);
System.out.println(value * 10);
}
}10
100
Append. System.out references a PrintStream. With this stream, we can append data. A CharSequence is accepted by the append method, so we can pass a string.
Tip We can append a range (subsequence) with the append method. We pass the first and last indexes of the string.
public class Program {
public static void main(String[] args) {
// Append strings to output stream.
System.out.append("cat");
System.out.append("\n");
// Append range of CharSequence.
System.out.append("java program", 5, 5 + 7);
}
}cat
program
Read line input. We wrap a BufferedReader around System.in to read strings from the console. The syntax is complicated, but once we get an available BufferedReader, it is easy to use.
Note The BufferedReader class can be initialized from an InputStream (such as System.in).
Note 2 The InputStreamReader class provides utility methods for reading from a stream. It is also used on files.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Program {
public static void main(String[] args) throws IOException {
// Get BufferedReader for System.in.
BufferedReader in = new BufferedReader(
new InputStreamReader(System.in));
// Read line from console.
String line = in.readLine();
System.out.println("You typed " + line);
}
}something
You typed something
Interactive program. This program uses a while-true loop to infinitely ask the user for input. It then parses the input into an int, using 0 for invalid values.
Result When I type "cat" the default case is reached. With the lines "1" and "2" the cases labeled 1 and 2 are entered.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Program {
public static void main(String[] args) throws IOException {
// Read input with BufferedReader.
BufferedReader in = new BufferedReader(
new InputStreamReader(System.in));
while (true) {
// Read line and try to call parseInt on it.
String line = in.readLine();
int result;
try {
result = Integer.parseInt(line);
} catch (NumberFormatException exception) {
result = 0;
}
// Handle user input in a switch case.
switch (result) {
default:
System.out.println("Default");
break;
case 1:
System.out.println("One");
break;
case 2:
System.out.println("Two");
break;
}
}
}
}cat
Default
2
Two
1
One
Default
Summary. Java provides robust console support. It recognizes the utility of these programs. Console programs are often harder to use, but easier to develop.
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.
This page was last updated on Jul 27, 2023 (edit).