Baixe o app para aproveitar ainda mais
Prévia do material em texto
Entrada/Saída Prof.: Ramon Pontes Canal Em java, todas as formas de se realizar a leitura e a escrita de dados a partir de uma fonte e para um destino, são reunidas, e abstraídas, no conceito de canal. Um Canal é uma abstração que pode representar quer uma fonte genérica de entrada de dados ou um destino genérico para escrita de dados 2 Programas... os programas geralmente precisam de entrada de dados para rodar a classe Scanner fornece métodos convenientes para ler valores de entrada de vários tipos um objeto Scanner pode ser setado para ler a entrada de diversas origens, incluindo o usuário digitando valores do teclado . JAVA oferece serviços básicos de Entrada e Saída através de dois canais associados respectivamente às operações de bytes associada a leitura do teclado ou a e escrita no monitor: System.in: Leitura no teclado System.out: Escrita no monitor 3 Classe Scanner (JAVA 5.0) A classe Scanner, introduzida com a versão J2SE 5.0, é uma classe nova que permite converter o texto para tipos primitivos. java.util.Scanner O texto pode ser obtido das mais diversas fontes tais como objectos do tipo: Strings InputStream Ficheiros A classe Scanner permite separar o texto em tokens, que são sequências de caracteres separados por delimitadores. Por defeito, os delimitadores são os espaços em branco, tabs e mudanças de linha. 4 Leitura do Teclado Para ler de forma confortável texto do canal de entrada padrão, é preciso criar primeiro um Scanner sobre canal System.in que esta associado ao teclado Scanner sc = new Scanner(System.in); Para cada um dos tipos primitivos há um método correspondente com a assinatura nextXxx() que retorne um valor desse tipo. Se a string não puder ser interpretada como sendo deste tipo, é lançado uma excepção do tipo InputMismatchException. Exemplos de algumas leituras de tokens: String aToken = sc.next() ; //Lê um token int num1 = sc.nextInt() ; //Lê um token inteiro double num2 = sc.nextDouble() ; //Lê um token real String linha = sc.nextLine() ; //Lê uma linha 5 Exemplo import java.util.Scanner; public class LerTeclado { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Digite um valor para A:"); int a = sc.nextInt(); System.out.println("Digite um valor para B:"); int b = sc.nextInt(); System.out.println("A Soma de A + B = "+(a+b)); } } Importa a classe Scanner que está no pacote java.util Cria um objeto do tipo Ler um valor inteiro do teclado Ler um valor inteiro do teclado Escreve no console o resultado da soma 6 Entendendo melhor a seguinte linha cria um objeto Scanner que lê do teclado: Scanner scan = new Scanner (System.in); o operador new cria o objeto Scanner, chamado scan após criado, o objeto Scanner pode ser usado para chamar vários métodos de entrada, como por exemplo: answer = scan.nextLine(); 7 Lendo entrada a classe Scanner é parte da biblioteca java.util, e deve ser importada no programa para ser usada o método nextLine lê todas as entradas até que o fim-de-linha seja encontrado 8 Tokens de entrada a menos que especificado de outra forma, os espaços em branco são usados para separar elementos (chamados tokens) de entrada espaços em branco incluem: o caracter de espaço, tabs, caracter de new line o método next da classe Scanner lê o próximo token de entrada e o retorna como um string os métodos como nextInt e nextDouble lêem os dados de tipos particulares 9 Hora de pensar e exercitar 10 Praticar 1) Fazer uma calculadora que solicita dois valores do usuário e exibe na Tela os seguintes resultados: - Soma; - Subtração; - Divisão e - Multiplicação. 11 A prática leva a perfeição 2) Fazer uma aplicação que solicita do usuário o: - nome; - idade; - e-mail; Após receber estes parâmetros, o sistema deve exibir na tela o seguinte: - Se o usuário tiver mais de 18 anos: Cadastro realizado com sucesso - Se o usuário tiver menos de 18 anos: Cadastro na fila de espera; - Se o usuário for maior de 60 anos: Cadastro registrado no passe livre. 12 Programar..... 3) Fazer uma aplicação que recebe do usuário um valor e depois informa a esse usuário se o valor é ou não Primo. 4) Fazer uma aplicação que recebe do usuário um valor inteiro (n) e depois informa quantos números pares existe. 13 Exercitar 5) Fazer uma aplicação que solicita do aluno três notas. O sistema deve realizar a média entre as três notas e informar se o aluno foi: - Aprovado: média >= 7; - Recuperação: média > 4 e média < 7; - Reprovado: média < 5. OBS: A média é um valor inteiro. 14
Compartilhar