Você está na página 1de 35

CENTRO UNIVERSITRIO DE JOO PESSOA

COORDENAO DE SISTEMAS DE INFORMAO

Tipos Literais, Operadores e


Controle de Fluxo
Jefferson Ferreira Barbosa
jeffersonjpa@gmail.com

Joo Pessoa
2014

Obje7vos
Apresentar operadores e controles de uxo
em java
Apresentar os 7pos primi7vos
Apresentar as classes Wrappers
Apresentar a palavra reservada final
Apresentar os operadores aritm7cos

Operadores e Controle de Fluxo


Este mdulo explora as estruturas procedurais da
linguagem Java
Operadores
Aritm7cos, lgicos, binrios, booleanos, de deslocamento, de
concatenao, de converso, ...

Converso de 7pos
Promoo
Coero (cast)

Estruturas de controle de execuo

if-else
for, while, do-while
break, con7nue, rtulos
switch (case)

Iden7cadores
Iden7cadores so palavras u7lizadas para
nomear variveis, mtodos e classes.
No se pode u7lizar palavras reservadas,
devendo comear com uma letra, $ ou _,
podendo contudo u7lizar nmeros como parte
do iden7cador.
Vlidos: louco intGrande $valor1
Invlidos: 3_variavel !verdade

Java uma linguagem case-sensi7ve, ou seja,


MAISCULAS != minsculas
Total e total so iden7cadores dis7ntos

Palavras reservadas
Palavras que no podem ser u7lizadas como
iden7cadores.

Tipos de Dados
Java uma linguagem fortemente 7pada. Assim,
cada varivel declarada no escopo da aplicao
deve ter um 7po denido, seja ele primi7vo ou
objeto (referncia).
Tipos Primi7vos So unidades indivisveis de dados,
que possuem tamanho xo
Tipos Objetos So estruturas complexas, que
representam diversos 7pos de dados

Algumas classes so u7lizadas para representar


7pos primi7vos sob forma de objeto, estas so
denominadas classes Wrappers.

Tipos Primi7vos de Dados


Um 7po primi7vo denido por um conjunto
de valores.
Exemplo: int = conjunto dos nmeros inteiros

As palavras reservadas denem oito 7pos


primi7vos de dados:
byte, short, int, long
float, double
char
boolean

Tipos Primi7vos - Inteiros

Wrappers - Inteiros
Alguns mtodos Integer:
parseInt(String s) transforma uma string em inteiro
toString(int i) transforma um inteiro em string
toHexString(int i) transforma um long em
hexadecimal

Alguns mtodos Long:


parseLong(String s) transforma uma string em long
toString(long l) transforma um long em string
toHexString(long l) transforma um long em
hexadecimal

Tipos Primi7vos - Reais

Wrappers - Reais
Alguns mtodos Float:
parseFloat(String s) transforma uma string em
oat
toString(oat f) transforma um oat em String

Alguns mtodos Double:


parseDouble(double d) transforma uma string
em double
toString(double d) transforma um double em
String

Wrappers - Caracteres
Em Java, u7liza-se o padro Unicode
Conjunto de caracteres de 16 bits = 65536 caracteres
so disponveis!
Atualmente, ele foi expandido para 32bits = 4 bilhes

Caracteres Unicode so gravados em arquivos


usando um formato chamado UTF-8, UTF-16 ou
UTF-32
possvel inserir caracteres Unicode no cdigo
fonte u7lizando-se do formato \uXXX
Ex.: \u0057 = W

Wrappers - Caracteres
Um char armazena um caractere do conjunto
Unicode.
O Unicode um conjunto internacional
contendo os caracteres de vrias lnguas no
mundo.

Wrappers - Caracteres
Alguns mtodos - Character:
isLowerCase(char ch) verica se uma letra
minscula
isUpperCase(char ch) verica se uma letra
maiscula
isDigit(char ch) verica se um dgito numrico
isLeser(char ch) verica se uma letra
isWhiteSpace(char ch) verica se um espao
toLowerCase(char ch) transforma para minscula
toUpperCase(char ch) transforma para maiscula

Tipos Primi7vos - Boolean


Um valor booleano representa uma condio
Verdadeira ou Falsa.
As palavras reservadas true e false, so os
nicos valores vlidos.

Tipos Primi7vos - Boolean


Classe Boolean
Duas constantes:
Boolean.TRUE
Boolean.FALSE

Alguns mtodos:
parseBoolean(String s) transforma uma string em
booleano
toString(boolean b) transforma um booleano em
string

Variveis
Uma varivel um iden7cador que representa uma
posio na memria capaz de armazenar um 7po
especco de dado
As variveis devem ser declaradas antes de serem
u7lizadas:
TipoVariavel nomeVariavel;
Variveis podem ser declaradas na mesma linha
Variveis podem ser inicializadas no momento da
declarao
int total, count, sum;
double unitPrice = 57.25;

A palavra reservada final


A palavra final usada para limitar o uso das
classes, variveis e mtodos.
Impede que implementaes ou valores sejam
alterados.

U7lizada para denir:


CONSTANTES
Mtodos
Classes

A palavra reservada final


Constantes

Constantes so especicadas u7lizando-se a palavra


reservada nal.
public static final double TAXA_JUROS = 0.5;
Uma constante similar a uma varivel, com exceo
de que o seu valor no pode ser alterado.
Constantes so teis pois:
Tornam a leitura do cdigo mais fcil
Facilitam mudanas, uma vez que o valor especicado
apenas em um nico lugar

Qualquer varivel declarada como final tem que ser

inicializada no momento da declarao

A palavra reservada final


Mtodos
Mtodo cujas implementaes no podem ser
redenidas nas sub-classes.
O nal impede que o mtodo seja sobrescrito
(overriding) na subclasse

A palavra reservada final


Classes
Uma classe tambm pode ser declarada como
nal
public final class MinhaClasse { ... }
No possvel estender (herdar de) uma
classe nal.
7l em classes cujo o comportamento be
denido e que no faz sen7do modic-las.
E x : c l a s s e s q u e i m p l e m e n t a m f u n e s
matem7cas.

Operadores
Um operador produz um novo valor a par7r de um ou
mais argumentos
Os operadores em Java so pra7camente os mesmos
encontrados em outras linguagens
+, -, /, *, =, ==, <, >, >=, &&, etc.
A maior parte dos operadores s trabalha com valores
de 7pos primi7vos
Excees:
+ e += so usados na concatenao de strings
!=, = e == so usados tambm com objetos (embora no
funcionem da mesma forma quanto aos valores
armazenados nos objetos

Operadores

Tabela de precedncia Java

Literais de Caracteres Java

Operadores
A precedncia determina em que ordem as operaes em
uma expresso sero realizadas
Por exemplo, as operaes de mul7plicao so realizadas
antes de operaes de soma:

int x = 2 + 2 * 3 9 / 3;
// 2+6-3 = 5
Parnteses podem ser usados para sobrepor a precedncia
int x = (2 + 2) * (3 9) / 3; // 4*(-6)/3 = -8
A maior parte das expresses de mesma precedncia
calculada da esquerda para a direita
int y = 13 + 2 + 4 + 6;

// (((13 + 2) + 4) + 6)
H excees. Por exemplo, atribuio.

Operadores de atribuio
Uma atribuio segue a seguinte sintaxe:
variable_name = <expression>;

A expresso avaliada e o resultado


armazenado na varivel, sobrescrevendo o valor
existente.
= serve apenas para atribuio, em comparaes
usase ==.
Copia o valor da varivel ou constante do lado direito
para a varivel do lado esquerdo

x = 13; // copia a constante inteira 13 para x


y = x; // copia o valor con7do em x para y

Operadores aritm7cos

+ adio
- subtrao
* mul7plicao
/ diviso
Operadores unrios

-n e +n (ex.: -23) (em uma expresso: 13+ -12)


Melhor usar parnteses: 13 + (-12)

Atribuio com operao

+=, -=, *=, /=, %=


x = x + 1; equivale a x += 1;

Operadores aritm7cos

Operadores aritm7cos
Atribuies abreviadas

x += 4 equivale a x = x + 4,
existem ainda -=, *=, /= e %=

Cuidado: o resultado da diviso depende do 7po


dos operandos.
Tipo inteiro: o resultado a diviso inteira

int resultado = 10/4

//igual a 2

Tipo ponto utuante: o resultado a diviso

normal
float resultado = 10f/4f

// igual a 2.5

Operadores aritm7cos
Menos unrio e mais unrio
Criao de nmeros nega7vos ou posi7vos
x = +a * -b;
x = a * (-b);

Operadores de incremento
Exemplo

int a = 10;
int b = 5;

Incrementa ou decrementa antes de usar a varivel


int x = ++a;
// a contm 11, x contm 11
int y = --b;
// b contm 4, y contm 4
a atribuio foi feita DEPOIS!

Incrementa ou decrementa depois de usar a varivel


int x = a++;
// a contm 11, x contm 10
int y = b--;
// b contm 4, y contm 5
a atribuio foi feita ANTES!

Exerccio
Crie uma Programa Calculadora que efetue as
operaes bsicas de uma calculadora.
Use a classe Scanner para ler as informaes
do teclado.
Scanner input = new Scanner(System.in);

Ajuda

Você também pode gostar