Classe System
A classe System
é uma classe do pacote java.lang
que fornece métodos e propriedades para interagir com o ambiente em que o programa está sendo executado. Entre as funcionalidades da classe System
, destacam-se o acesso a variáveis de ambiente, a propriedades do sistema e a manipulação de entradas e saídas.
Os objetos System.in
, System.out
e System.err
são instâncias predefinidas das classes InputStream
, PrintStream
e PrintStream
, respectivamente.
O objeto System.out
é uma instância da classe PrintStream
que fornece métodos para imprimir dados na saída padrão. Entre os métodos mais comuns da classe PrintStream
, destacam-se:
println()
: Imprime uma string na saída padrão seguida por uma quebra de linha.print()
: Imprime uma string na saída padrão sem quebra de linha.printf()
: Imprime uma string formatada na saída padrão.
O objeto System.err
por ser também uma instância da classe PrintStream
possui os mesmos métodos disponíveis que a System.out
com a diferença de que referencia a saída padrão para erros, que normalemente é a mesma.
O objeto System.in
é uma instância da classe InputStream
que fornece métodos para ler dados de entrada. Os métodos mais comuns da classe InputStream
são:
read()
: Lê um byte de entrada e o retorna como um inteiro.read(byte[])
: Lê uma sequência de bytes de entrada e armazena-os em um array de bytes.available()
: Retorna o número de bytes disponíveis para leitura.
A classe Scanner
, do pacote java.util
, permite a leitura de dados de entrada em formatos diversos, incluindo tipos primitivos, strings e expressões regulares. Entre os métodos mais comuns da classe Scanner
, destacam-se:
nextInt()
: Lê um inteiro da entrada.nextDouble()
: Lê um número real da entrada.nextLine()
: Lê uma linha da entrada como uma string.next()
: Lê a próxima palavra da entrada como uma string.
Exemplo de uso da classe System.out
:
int x = 10;
System.out.println("O valor de x é " + x);
Exemplo de uso da classe System.err
:
System.err.println("Erro: valor inválido!");
Exemplo de uso da classe System.in
:
try {
int b = System.in.read();
System.out.println("O byte lido foi: " + b);
} catch (IOException e) {
System.err.println("Erro na leitura do byte: " + e);
}
Exemplo de uso da classe System.in
e da classe Scanner
para ler um inteiro da entrada:
Scanner scanner = new Scanner(System.in);
System.out.print("Digite um número: ");
int x = scanner.nextInt();
System.out.println("O número digitado foi " + x);
Referências
Last updated