Características de Java

Documentos relacionados
Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

2 Orientação a objetos na prática

Sintaxe Básica de Java Parte 1

A Linguagem Java. Alberto Costa Neto DComp - UFS

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA

Algoritmia e Programação APROG. Linguagem JAVA. Básico. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31

ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento NetBeans Introdução à Linguagem de Programação JAVA

Java Como Programar, 8/E

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

Programação de Computadores - I. Profª Beatriz Profº Israel

Criar a classe Aula.java com o seguinte código: Compilar e Executar

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa

CURSO DE PROGRAMAÇÃO EM JAVA

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

Linguagens de. Aula 02. Profa Cristiane Koehler

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

2. OPERADORES ALGORITMOS, FLUXOGRAMAS E PROGRAMAS FUNÇÕES... 10

Organização de programas em Java. Vanessa Braganholo

JAVA. Fabrício de Sousa

Componentes da linguagem C++

Linguagem de Programação Introdução a Linguagem Java

JAVA. Introdução. Marcio de Carvalho Victorino. Page 1 1/40 2/40

AULA Uma linguagem de programação orientada a objetos

Programação online em Java

insfcanceof new public switch transient while byte continue extends for int null

Um pouco do Java. Prof. Eduardo

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

Roteiro 1: Dados, variáveis, operadores e precedência

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Algoritmos e Programação Estruturada

INF 1005 Programação I

Capítulo 2: Introdução à Linguagem C

Noções sobre Objetos e Classes

Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.

Java. Marcio de Carvalho Victorino

Lógica de Programação

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream>

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional

Aula 2. Objetivos Conceitos; Instalação do Text Pad; Entendendo o código java do AloMundo1 Codificação do AloMundo2,AloMundo3 e AloMundo4.

INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TÉCNICO EM INFORMÁTICA DISCIPLINA:

JavaScript 2.0X X

Programação Orientada a Objetos (DPADF 0063)

Introdução à Linguagem

UNIVERSIDADE FEDERAL DO PARANÁ

Programação Orientada a Objetos! Java - Fundamentos. Prof. Sérgio Almagro! sergio.ricardo.almagro@gmail.com

MC102 Algoritmos e programação de computadores Aula 3: Variáveis

FBV - Linguagem de Programação II. Um pouco sobre Java

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

Introdução ao IDE Netbeans (Programação Java)

Desenvolvimento OO com Java 3 Estruturas de Controle e Programação Básica

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

Java para Desktop. Introdução à Plataforma Java JSE

Algoritmos e Programação

Introdução à Linguagem Java

Resumo da Matéria de Linguagem de Programação. Linguagem C

Keeper of Knowledge. Capítulo 1 Conceitos Básicos do Java

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO

Java Linguagem de programação

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: Prof. Dr. Raimundo Moura

Faculdade de Ciências Universidade Agostinho Neto Departamento de Matemática e Engenharia Geográfica Ciências da Computação

Sintaxe Básica do Java. João Paulo Q. dos Santos

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

MsC. João Maria MsC. Liviane Melo

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

Computação II Orientação a Objetos

Técnicas de Programação II

Linguagens de programação

Orientação a Objetos em Java. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

PHP() é uma linguagem de integração de servidor que permite a criação de paginas dinâmicas. Como todas

P n o t n ifíci c a a Un U i n ve v r e si s da d d a e d e C a C t a ól ó ica c a d o d o R i R o o d e d e J a J n a e n i e ro o PU P C U -Ri R o

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código }

Programação Orientada a Objetos

Organização de programas em Python. Vanessa Braganholo

Introdução a conceitos e a prática de programação

Programação Orientada a Objetos

Introdução a Java. Hélder Nunes

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010

Fundamentos de Programação II. Introdução à linguagem de programação C++

CONVENÇÃO DE CÓDIGO JAVA

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

JSP - ORIENTADO A OBJETOS

Desenvolvimento Web TCC Turma A-1

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva

Faculdade de Computação Programação Orientada à Objetos 1 Laboratório de Programação Orientada à Objetos Prof. Fabíola Gonçalves Coelho Ribeiro

Programação de Computadores - I. Profª Beatriz Profº Israel

Orientação a Objetos

Programação Básica em Arduino Aula 2

Programação WEB. Prof. André Gustavo Duarte de Almeida docente.ifrn.edu.br/andrealmeida. Aula III Introdução PHP

Introdução à Programação

Primeiro programa em Java (compilação e execução)

LINGUAGEM DE PROGRAMAÇÃO JAVA

Prof. Esp. Adriano Carvalho

Transcrição:

Características de Java Familiar e Simples Sintaxe parecida com C/C++; Porém mais limpa: sem ponteiros, estruturas, etc; Orientada a Objetos (OO) Prática de programação já consolidada no mercado; OO permite reutilização de diversos trechos de códigos; Recursos OO de Java são essencialmente os mesmos de C++; Portável (Multiplataforma) Programa Java pode rodar em qualquer plataforma (HW e SO) sem precisar adaptar o código; Ex: Windows, Linux, Mac OS, etc; 1 Características do Java Interpretada (Uso de máquinas virtuais) Interpretador roda bytecodes em qualquer máquina em que foi portado; Comunicação em Rede Extensa biblioteca para lidar com protocolos TCP/IP (HTTP, FTP, etc); Acesso a objetos pela Internet é similar ao acesso de arquivos locais; Suporte Nativo a Threads Threads: estratégia que permite que mais de um evento aconteça simultaneamente em um programa; Ex: Conexão de cada usuário é tratada por uma thread; Atraente para o desenvolvimento de servidores; 2 1

Características do Java Acesso remoto a BD Classes prontas para o acesso a BD Segura Vários mecanismos para controlar a segurança (criptografia dos dados); Desenvolvida para rodar em ambientes distribuídos (rede); Poucos bugs encontrados e todos muitos técnicos; Robusta Mecanismo eficiente para tratamento de erros e coleta de lixo; Minimiza bugs, aumenta produtividade; 3 2

O que é (a tecnologia) Java? Java não é apenas uma Linguagem de Programação; É uma tecnologia que contempla: 1 Linguagem de Programação OO + 1 Plataforma de Programação; Conjunto de APIs (bibliotecas) e ambiente de desenvolvimento para aplicações; Ambiente de execução (JVM) presente em: browsers, mainframes, SOs, TVs, celulares, tablets, eletrodomésticos, etc. 5 Plataforma Java Plataforma: ambiente de SW ou HW no qual um programa roda Ex: Microsoft Windows, Unix, Macintosh; Plataforma Java: plataforma apenas de SW que roda sobre plataformas de HW e tem dois componentes: JVM (Java Virtual Machine) Java API 6 3

Criação de Programas Java Código-fonte Compilador Bytecodes de saída Máquina Virtual Java } Três tipos básicos de programas em Java: 1. Aplicaçõesconvencionais: executadas no Desktop; 2. Applets: executados no browser (cliente); 3. Servets: executados no lado servidor Web 7 Compilação para bytecode Compilador traduz código Java para bytecodes (arquivo.class) Bytecode:é um código de máquina queroda em qualquer máquina, basta quehaja uma Máquina Virtual Java (JVM) 8 4

Máquina Virtual Java (JVM) Write once, Run Anywhere No geral, um programa compilado em uma plataforma não roda em outra Ex: Programa em C++ compilado no Windows não roda no Unix; Necessário gerar uma versão do programa para cada plataforma; Bytecodes + Máquina Virtual (JVM): Cada JVM converte os bytecodes para a plataforma específica Mesmo programa roda igualmenteem várias plataformas; Bytecode Java JVM para Windows Windows JVM para Linux Linux 9 Máquina virtual Java Write once, Run Anywhere 10 5

Primeiro Contato com Java 11 Alo Mundo em Java /** Aplicação Alo Mundo */ public class AloMundo{ } public static void main(string []args){ System.out.println("Alo mundo"); } 12 6

Alo Mundo em Java Comentário de bloco Definição do método main() /** Aplicação Alo Mundo */ public class AloMundo{ } public static void main(string []args){ System.out.println("Alo mundo"); } Definição da classe AloMundo Chamada do método println() que imprime uma string na tela 13 Instalação do JDK Para compilar e rodar programas Java, é necessário antes instalar o Kit de Desenvolvimento Java (JDK) 1. Baixar e instalar o JDK 8: http://www.oracle.com/technetwork/java/javase/downloads/jdk8- downloads- 2133151.html 2. Ou baixar o eclipse que vem com o JDK junto. 14 7

Instalação do JDK 2. Configurar as variáveis de ambiente: JAVA_HOME: onde está o JDK; PATH: onde está o compilador, interpretador de Java; CLASSPATH: onde estão as bibliotecas de Java; Windows: Caminho de instalação: C:\Arquivos de Programas\Java\jdk.1.6.0_27 Painel de Controle- >Sistema- >Avançado- >Variáveis de ambiente: JAVA_HOME = C:\Arquivos de Programas\Java\jdk.1.6.0_27 PATH = C:\Arquivos de Programas\Java\jdk.1.6.0_27\bin CLASSPATH = C:\Arquivos de Programas\Java\jdk.1.6.0_27\lib 15 Instalação do JDK Verificar a instalação Prompt de Comando: javac ; Duas possibilidades: 1. javac não é reconhecido como programa... : Problema na instalação 2. Tela com instruções de help de Java: Instalação OK!!! 16 8

Escrever o programa 1. Escrever código do programa em um editor de texto; Ex: Bloco de Notas, Notepad++, Vim, etc. 2. Salvar arquivo com a extensão.java Nome arquivo = nome da classe (AloMundo.java) 17 Compilar e Executar usando JDK 1. Compilar o programa (javac) Comando: javac AloMundo.java 2. Executar programa (java): Comando: java AloMundo 18 9

Ambientes de Desenvolvimento (IDEs) Outra alternativa para escrever, compilar e rodar programas Java; Possuem uma versão integrada de : Editor de Texto; Compilador e Interpretador Java; Editor Gráfico; Debugger; Facilita a construção e manipulação de programas Rápida visualização de todos os arquivos do projeto; Ferramentas de gerenciamento de trabalho coletivo, etc 19 Eclipse No curso, usaremos a IDE Eclipse: Contém as seguintes ferramentas Editor de texto: com destaque de sintaxe Compilador e interpretador Java (e de outras linguagens); Editor gráfico: criação e edição da interface gráfica; Debugger: auxilia na correção de bugs; 20 10

Criando o Projeto no Eclipse... 1. Criar um Projeto Java File New Project 2. Escolher Java Project Clicar em Next 21 Criando o Projeto no Eclipse... 3. Nomear o Projeto... 4. Finalizar 22 11

Criando a Aplicação 3. Escrever o nome da classe 1. Clicar com botão direito... New Class 4. Finalizar 23 Salvando... Salvar 24 12

Alo Mundo em Java Case sensitive public - > modificador de acesso class - > nos lembra que tudo em Java é classe Nome da classe = nome do arquivo (case- sensitive) CamelCase para nome da classe {} mesmo delimitador do C/C++ System.out.println - > invocação de método do objeto Comentários /** Aplicação Alo Mundo */ public class AloMundo{ } public static void main(string []args){ System.out.println("Alo mundo"); } 25 Tipos em Java Java é uma linguagem fortemente tipada; É necessário definir o tipo da variável antes de usá- la; Qual o tipo de dadoque ela vai armazenar; Ex: Quantidade de peças em estoque: variável inteira; int quantestoque; Ex: Saldo da conta bancária: variável de ponto- flutuante; float saldo; 26 13

Tipos de Dados Na maioria das linguagens, os tipos de dados não são portáveis Tamanhos diferentes dependendo da plataforma; Ex: int: 16 ou 32 bits dependendo da plataforma (C/C++); Em Java, os tipos de dados são portáveis Tamanho fixo independente de plataforma; Ex: int: 32 bits em todas as plataformas; 27 Tipos em Java Podem ser: Tipos primitivos (embutidos) Incorporados na própria linguagem Representados por palavras chaves Ex: int, float, char, boolean, etc; Tipos derivados Criado pelo programador ou provido pela biblioteca de Java; Ex: Classes (estudaremos mais adiante no curso) 28 14

Tipos Primitivos de Java } Têm tamanho fixo e valores default; Tipo Qde. de bits Valor default Faixa de Valores boolean 8 false true ou false char 16 \u0000 \u0000 a \uffff byte 8 0-128 a 127 short 16 0-32.768 a 32.767 int 32 0-2.147.483.648a +2.147.483.647 long 64 0-9.223.372.036.854.775.808 a +9.223.372.036.854.775.807 float 32 0.0-3.40292347E+38 a +3.40292347E+38 double 64 0.0-1.79769313486231570E+308 a - 1.79769313486231570E+308 29 Declaração de variáveis em Java Variáveis em Java devem ser declaradas antes de serem usadas Caso contrário, teremos um erro de compilação; Formato: <tipo> <nomedavariavel>; Exs: int num1; double dolar; char inicialnome; boolean foicomprado; 30 15

Declaração de variáveis em Java Variáveis em Java devem ser declaradas antes de serem usadas Caso contrário, teremos um erro de compilação; Conjunto de valores que a ela pode assumir Formato: Exs: <tipo> <nomedavariavel>; int num1; double dolar; char inicialnome; boolean foicomprado; Permite que o programa acesse o seu valor na memória. 31 Declaração de variáveis Variáveis do mesmo tipo podem ser declaradas na mesma linha e separadas por vírgula; int x, y; double dolar, media; char; Também podem ser inicializadas: int x = 10, y = 20; double dolar = 1.61; char c = a ; 32 16

Declarações de variáveis Nomes das variáveis são identificadores; Formados por: letras, dígitos, _ e $ ; Não podem começar com dígitos; Não podem ser palavras reservadas de Java (ex: for, if) Ex: botao7, $valor, _real, m_campo, Teste Ex: 7button, t.d@ce, tiago maritan, while Case Sensitive: Distinção entre maiúsculas e minúsculas: ex: MinhaVare minhavar são diferentes; 33 Declarações de variáveis Convenção de nome - > camelcase Forçar tipos: long, double, float Forma: octal, decimal, hexa, binário, _ char: A Sequencias de escape, como no C Formato Unicode: \u0008 (por exemplo) boolean: true ou false Não há conversão entre boolean e inteiro Sempre inicializar antes de usar! Podem ser declaradas em qualquer parte do código 34 17

Palavras reservadas do Java 7 SE abstract continue for new switch assert default goto* package synchronized boolean do if private this break double implements protected throw byte else import public throws case enum instanceof return transient catch extends int short try char final interface static void class finally long strictfp volatile const* float native super while * não usadas; 35 Declaração de Constantes Em Java, usa- se a palavra reservada final para denotar constantes. Ex: final double PI= 3.14; final int MM_PER_CM = 10; Uma vez inicializada, a constante não pode mais ser alterada; A tentativa de alteração implica em um erro de compilação; 36 18

Operadores em Java Todos os operadores possuem: Resultado Aridade Precedência Associatividade 37 Operadores em Java Ø Resultado Valor resultante da aplicação do operador sobre seus operandos Ex: aplicação do operador + na expressão 2 + 3 resulta em 5; Ø Aridade Número de operandos sobre os quais o operador atua ü Operadores unários requerem um operando ü Operadores binários requerem dois operandos ü Operador ternário requer três operandos Ex: operador + tem aridade 2 (i.e., um operador binário) 38 19

Operadores em Java Ø Precedência Ex: Qual o resultado de 2+3*4? Por quê? Operador * tem maior precedência que + Convenção sobre a ordemem que as operações são executadas Operador com maior precedência é aplicado antes Ø Associatividade Qual é o resultado de 8/2/2? Por quê? Operador / tem associatividade à esquerda; À esquerda: operador mais a esquerda é aplicado 1º À direita: operador mais a direita é aplicado 1º 39 Operadores em Java Uso de Parênteses Alteram a ordem de aplicação de operadores numa expressão Tornam as expressões complexas mais legíveis Exemplos: int a = 2+(3*4); int b = ((8/2)/2); int c = (2 + 2) * (3-9) / 3; 40 20

Operadores em Java Podem ser de 4 tipos: Atribuição; Aritméticos; Relacionais; Lógicos; 41 Operador de Atribuição Operador = Copia o valor de uma variável (expressão ou constante) do lado direito para a variável do lado esquerdo; x = 13; // copia a constante 13 para x y = x; // copia o valor de x para y 42 21

Operadores Aritméticos em Java Operador Significado Exemplo + mais unário +x - menos unário (inversão de sinal) -x + adição x + y - subtração x y * multiplicação x * y / divisão x / y % resto da divisão inteira x % y ++ incremento unitário ++x ou x++ -- decremento unitário --x ou x-- 43 Operadores Aritméticos Ø Operador divisão (/) Serve para ambas as divisões: inteira e ponto flutuante; Tipos dos operandos é que definem o tipo de divisão; Ou seja: Inteiro / Inteiro => Inteiro Ponto flutuante / Ponto flutuante => Ponto flutuante Ponto flutuante / Inteiro => Ponto flutuante 44 22

Operadores Aritméticos Operadores de Incremento (++) e Decremento (- - ) Adicionam ou subtraem 1 ao valor da variável; int n = 12, t = 2; n++; // mudou n para 13 t--; // mudou t para 1 Podem ser: Pré- fixos: ++x ou --x; Pós- fixos:x++ ou x--; Qual é a diferença? 45 Operadores Aritméticos Operadores de Incremento e Decremento A diferença é quando são usados em expressões: Pré- fixo: faz a adição primeiro; Tem maior precedência que os outros operadores aritméticos; Pós- fixo: faz a adição depois; Tem a menor precedência de todos os operadores; int m = 7; int n = 7; int a = 2 * ++n; // a = 16 e m é 8 int b = 2 * n++; // b = 14 e n é 8 46 23

Operadores Relacionais Produzem Operador sempre valores Significado booleanos Exemplo (1 ou 0) Resultado == Igual a x == y true se x é igual a y; false caso contrário!= Diferente de x!= y true se x é diferente de y; false caso contrário < Menor do que x < y true se x é menor do que y; false caso contrário <= Menor ou igual a x <= y true se x é menor ou igual do que y; false caso cont. > Maior do que x > y true se x é menor do que y; false caso contrário >= Maior ou igual a x >= y true se x é maior ou igual do que y; false caso cont. 47 Operadores Lógicos Produzem sempre valores booleanos (1 ou 0) Curto circuito! Operador Significado Exemplo! Operador Negação (ou not)!x && Operador E lógico (ou and) x && y Operador Ou lógico (ou or) x y 48 24

Operadores de Atribuição com Operação Operador Exemplo Significado += x += 2 x = x + 2 -= x -= 1 x = x 1 *= x *= 1 x = x * 1 /= x /= 3 x = x / 2 %= x %= 5 x = x % 5 49 Precedência e Associatividade dos Operadores em Java GRUPO DE OPERADORES PRECED. ASSOC.!, +, - (unários) Mais alta Esquerda ++, -- (pré-fixados) Esquerda *, /, % Esquerda +, - (binários) Esquerda >, >=, <, <= Esquerda ==,!= Esquerda && Esquerda Esquerda =, +=, -=, *=, /=, %= (atribuição) Direita ++, -- (pós-fixados) Mais baixa Esquerda 50 25

Operadores Operador ternário Bitwise & (and), (or), ^ (xor), ~ (not) >>, << 26

Classe Math ( biblioteca) Math.pow(x, 2); Math.sqrt(4); Msth.sin, cos, tan, exp (consultar parametros) Math.PI, Math.E Ta bom 27

Conversões entre tipos Muitas vezes é necessário converter um tipo numérico para outro. Ex: converter um n o intpara float; Conversões válidas em Java: char byte short int long float double Conversão sem perda de informação Conversão com possível perda de informação 55 Conversões entre tipos Exemplo: byte b = 127; short s = b; // s é 127 int n = 123456789; float f = n; // f é 1.23456792E8 // houve perda de precisão 56 28

Conversão entre tipos Quando 2 valores de tipos diferentes são combinados, eles são convertidos em tipo comum antes da operação. Ex: int n = 10; float f = 12.3; float x = n + f; // n é convertido p/ float Regras: 1. Se um operando for double => ambos viram double; 2. Caso contrário, se um for float => ambos viram float; 3. Caso contrário, se um for long => ambos viram long; 4. Caso contrário => todos viram int; 57 Coerção (casting) entre tipos Também é possível fazer conversões forçadas entre tipos Casting: Envolve, em geral, perda de informação; Ex: converter um n o doublepara int; Coloca o tipo que se deseja converter entre parênteses double x = 9.997; int nx = (int) x; // nx é 9. // (int) conversão (casting) de double para int int t = 100; byte b; b = (byte) t; // casting de int para byte 58 29

Entrada e Saída em Java Java possui uma extensa biblioteca para manipular E/S Entrada: teclado (console ou GUI), mouse, arquivos, rede, etc; Saída: console, GUI, arquivo, rede, etc; Manipular GUI, arquivos, rede, exige um conjunto de ferramentas e técnicas; Então, por enquanto, vamos trabalhar E/S apenas com: Console (Scanner e System.out); Caixa de Diálogo (JOptionPane); 59 Saída do Usuário - System.out System.out possui alguns métodos para exibir dados no console: println() exibe os dados e depois muda de linha (\n); print() exibe os dados e continua na mesma linha; printf() exibe os dados formatados (similar ao printfde C); String nome = Lincoln"; System.out.println("Ola " + nome); // muda de linha System.out.print("Seja"); // continua na mesma linha System.out.println("bem vindo"); // muda de linha double x = 10000/3D; // 8 caracteres e 2 casas de precisão System.out.printf(" %8.2f", x); // 3333.33 60 30

Entrada do usuário Classe Scanner Classe Scanner (introduzida no Java 5.0) Lê a entrada do teclado e converte- a para tipos primitivos; Separa a entrada do usuário (String) em tokens; Tokens: seqüências de caracteres separados por delimitadores Ex: espaço, tabulação, mudança de linha; 61 Entrada do usuário Classe Scanner Classe Scanner (introduzida no Java 5.0) Lê a entrada do teclado e converte- a para tipos primitivos; Primeiro, é preciso criar um Scanner sobre o canal System.in Scanner entrada = new Scanner(System.in); Então, utiliza- se os métodos da classe Scanner para ler a entrada: next() lê uma palavra (como String); nextint() lê um int; nextline() lê uma linha; nextbyte(), nextshort(), nextdouble()... Maiores detalhes em: http://download.oracle.com/javase/1,5.0/docs/api/java/util/scanner.html 62 31

Entrada do Usuário Classe Scanner Exemplo: import java.util.*; /* diretiva para usar classe de * outro pacote */ public class TestaEntrada{ public static void main(string args[]){ String nome; int idade; Scanner entr = new Scanner(System.in); System.out.print("Qual o seu nome: "); nome = entr.next(); // obtem 1ª entrada System.out.print("Qual é a sua idade: "); idade = entr.nextint(); // obtem 2ª entrada } } System.out.println("Olá " + nome + " próximo ano você terá " + (idade+1) ); 63 Entrada e Saída Caixa de Diálogo Classe JOptionPane Forma gráfica simples para E/S de dados; Necessário importar: javax.swing.joptionpane; Métodos mais usados: showmessagedialog() exibe caixa de diálogo de saída de dados; showinputdialog() exibe caixa de diálogo para entrada de dados; showinputdialog(): sempre retorna entrada como String Deve- se converter se entrada for um tipo primitivo Ex: Integer.parseInt(String x): converte x para inteiro; Double.parseDouble(String x): converte x para double; 64 32

Entrada e Saída Caixa de Diálogo Exemplo: import javax.swing.joptionpane;... String aux = ""; float nota1 = 0.0, nota2 = 0.0, media = 0.0; aux = JOptionPane.showInputDialog(null, "Digite a nota1"); nota1 = Float.parseFloat(aux); // converte str para float aux = JOptionPane.showInputDialog(null, "Digite a nota2"); nota2 = Float.parseFloat(aux); // converte str para float media = (nota1 + nota2)/2; JOptionPane.showMessageDialog(null, "Média = " + media); 65 Comentários Linhas adicionadas para facilitar o entendimento do programa; São totalmente ignorados pelo compilador Em Java, podem ser de 3 tipos: Comentário de Linha: Uma única linha ( // ) Comentário de bloco: Múltiplas linhas (/* */) Comentário de documentação: Múltiplas linhas (/** */) Gera documentação automaticamente por meio do javadoc 66 33

Comentários /** Exemplo02: Essa classe demonstra o uso de variáveis em Java. São declaradas variáveis int e double... */ public class Exemplo02{ public static void main(string args[]){ int x = 10; // declaração variavel int double dolar = 2.62; /* As linhas seguintes enviam o conteudo das variaveis para a tela */ System.out.println(x); System.out.prinln(dolar); } } 67 34