0% acharam este documento útil (0 voto)
10 visualizações147 páginas

Java

O documento aborda conceitos fundamentais da programação em Java, incluindo a importância da diferenciação entre letras maiúsculas e minúsculas, o uso de ponto-e-vírgula, e a estrutura básica de um programa. Também discute variáveis, tipos de dados, comentários e a manipulação de texto, além de fornecer exemplos práticos de código. Por fim, enfatiza regras para a criação de variáveis e a sensibilidade a casos na linguagem Java.

Enviado por

jas5868aa2
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
10 visualizações147 páginas

Java

O documento aborda conceitos fundamentais da programação em Java, incluindo a importância da diferenciação entre letras maiúsculas e minúsculas, o uso de ponto-e-vírgula, e a estrutura básica de um programa. Também discute variáveis, tipos de dados, comentários e a manipulação de texto, além de fornecer exemplos práticos de código. Por fim, enfatiza regras para a criação de variáveis e a sensibilidade a casos na linguagem Java.

Enviado por

jas5868aa2
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Caso sensitivo

Atenção

Na linguagem Java você deve prestar muita atenção na hora de digitar seu código fonte, pois, o Java é
caso sensitivo, ou seja, ele diferencia letras maiúsculas de minúsculas. Por exemplo, as palavras história,
História e HISTÓRIA são palavras diferentes.

Por exemplo, veja este código abaixo:

Texto="A raiz quadrada de 9 é 3";

[Link](Texto);

As palavras Texto e [Link] estão corretos, porém, se você alterar o código fonte com letras
maiúsculas e minúsculas,causará erros no código fonte. Observe:

Texto="A raiz quadrada de 9 é 3";

[Link](TEXTO);

As palavras TEXTO e [Link] estão errados,causando erros. O computadornãoreconhece estas


palavras. Na hora em que digitar o código fonte preste bastante atenção nas letras maiúsculas e
minúsculas, por causa de uma letra pode causar erros.

Ponto-e-vírgula (;) no final das declarações


Uma boa prática ao programar utilizando Java é sempre usar o; (ponto-e-vírgula) no final das suas
declarações, mas seu usoé obrigatório.

Você precisa utilizaer o ponto-e-vírgula se utilizar algum compressor de Javascript para reduzir o
tamanho do arquivo. como os comperssores distribuem os códigos em uma única linha, sem eles será
impossível determinar onde começa e termina uma istruçõa, ocasionando erro.

Editor de texto
Editor de texto é apenas um processador de texto que é usado para digitar o programa. O texto resultante
é conhecido como código fonte.

O editor de texto é um software que permite ao usuário selecionar trechos de um arquivo, alterar, apagar
ou adicionar testo ao código-fonte.

Código-Fonte

Código-fonte é uma seqüência de instruções numa linguagem de programação. O código-fonte é escrito


por um programador.

Este mesmo código é traduzido por um outro programador que pode ser pelo navegador no caso do
Javascript, pelo servidor no caso do PHP, ou pelo compilador no caso Java.

O código-fonte é o código básico de um programa.

Criando um novo documento - O


PRIMEIRO PROGRAMA
Para começar vamos analisar um exemplo bem simples - abra um editor de texto comum e digite o código
que está escrito abaixo:

Arquivo: [Link]

// [Link]

public class ExemploJava {


public static void main(String[] args) {
[Link]("Esta é a nova mensagem");
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Esta é a nova mensagem

C:\ExemploJava>

Salve este documento com o nome pá[Link]

Assim que o exemplo for salvo no editor de texto (bloco de notas, por exemplo) com a extensão .java, ao
ser executado, o programa enviará a seqüência de caracteres "Esta é minha primeira página" para a saída
padrão que é a tela do monitor.

Para criar um arquivo Java, basta definir os elementos e suas formatações ou um editor de texto, e salvá-
lo com a extensão .java, exemplo:

[Link]

[Link]

[Link]
Corpo do programa
Basicamente, a sintaxe do corpo do programa consiste em:

Arquivo [Link]

// [Link]

public class NomeDoPrograma {

// Variáveis públicas

public static void main(String[] args) {

// Conteúdo

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java NomeDoPrograma

C:\ExemploJava>

Carregando um arquivo externo


No Java, há a possibilidade de colocar mais de 1 arquivo externo ao documento. Ao invés de
trabalharmos com o Javainternamente, podemos trabalhá-lo externamente. Em vez de trabalharmos com
um arquivo, podemos trabalhar com mais de um arquivo.

Isto pode facilitar e muito a vida do programador.

Abra um editor de texto e copie o arquivo abaixo:

Arquivo: [Link]

// [Link]

public class ExemploJava {


public static void main(String[] args) {
arquivoesterno f = new arquivoesterno();

[Link]([Link]());
}
}
Arquivo: [Link]

// [Link]

public class arquivoesterno {

public String arquivo() {

String Texto;

Texto = "";
Texto += "Testando um arquivo externo. ";
Texto += "Bom dia ";
Texto += "Boa tarde e ";
Texto += "Boa noite. ";
Texto += "Fim do arquivo externo.";

return Texto;

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Testando um arquivo externo. Bom dia Boa tarde e Boa noite. Fim do
arquivo exter
no.

C:\ExemploJava>

Salve este arquivo com [Link].

Para incluir um arquivo externo ao documento use o comando src, no exemplo acima o arquivo externo é
"[Link]". Devemos sempre salvar este arquivo externo com a extensão js.

Abra o editor de texto de novo e copie este arquivo abaixo:

String Texto;
Texto = "";
Texto += "Testando um arquivo externo. ";
Texto += "Bom dia ";
Texto += "Boa tarde e ";
Texto += "Boa noite. ";
Texto += "Fim do arquivo externo.";
return Texto;
Salve este arquivo como [Link].

Assim que o documento [Link] seja executado ao ser executado o programa enviará para a
tela do monitor: "Testando um arquivo externo. Bom dia, Boa tarde e Boa noite. Fim do arquivo externo."

Observação: Se você está trabalhando com o arquivo externo do Javascript. Não use as tags <script> e
</script> dentro do código, o que causaria erros de programação. O arquivo [Link] só aceita comandos
Javascript se colocarmos tags html geraria erros, só use tags html dentro de aspas "duplas" ou 'simples'.

Comentários
Comentário é uma breve nota de explicação inseridas em um programa para descrever o que ele fará.

Os programadores usam comentários em seus programas para que outros programadores (e ele próprio)
entendam o que o programa faz e como funciona.

Os comentários geralmente descrevem o que o programa faz, quem é o seu autor, por que ele foi alterado,
e assim por diante. A maioria das linguagens de programação usa uma sintaxe própria para a
especificação de comentários, de modo que os comentários sejam ignorados pelo compilador.

Os comentários não são analisados pelo programa.

Os comentários podem ocupar uma ou várias linhas. Veja o exemplo abaixo:

Comentários de uma linha


Para inserir um comentário de uma linha basta colocar o símbolo // antes de qualquer comentário.

Exemplo:

Arquivo: [Link]

// [Link]

public class ExemploJava {


public static void main(String[] args) {

String Texto;

Texto = "Início do comentário. ";

//Comentário de uma linha


//Exemplo 1
//Exemplo 2
//Exemplo 3

Texto += "Fim do comentário.";

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Início do comentário. Fim do comentário.

C:\ExemploJava>

Comentário com mais de uma linha


Para inserir comentários com mais de uma linha basta colocar os símbolos / * para abrir um comentário e
* / para fechar o comentário.

Exemplo:

Arquivo: [Link]

// [Link]

public class ExemploJava {


public static void main(String[] args) {

String Texto;

Texto = "Início do comentário. ";

/*
Comentário
com mais de
uma linha
*/

/*
Exemplo 1
Exemplo 2
Exemplo 3
*/

Texto += "Fim do comentário.";

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Início do comentário. Fim do comentário.

C:\ExemploJava>

Usando aspas dentro de aspas


Ás vezes necessitamos informar algo entre aspas dentro de uma string. Isto pode ser resolvido alterando-
se aspas duplas e simples. Isto é usado em Javascript e PHP, veja o exemplo em Javascript.

<script>

[Link]("<img src='[Link]'>")

</script>

Outro exemplo:

<input Type="button" name="teste" value="Clique Aqui" onclick="alert('Exemplo de Aspas')">

Inserindo um texto
Para inserir um texto no programa use o comando [Link], veja o exemplo abaixo:

Arquivo [Link]

// [Link]

public class ExemploJava {


public static void main(String[] args) {

String Texto;

Texto = "";

Texto += "A raiz quadrada de 9 é 3\n";


Texto += "A soma de 5 + 4 é igual a 9\n";
Texto += "6 dividido por 3 é igual a 2\n";

[Link](Texto);
}
}
Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
A raiz quadrada de 9 é 3
A soma de 5 + 4 é igual a 9
6 dividido por 3 é igual a 2

C:\ExemploJava>

Editando um texto
Para editar um texto externamente basta usar o comando leia:

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {

String nome = "";


int idade = 0;

Scanner teclado = new Scanner([Link]);

[Link]("Digite seu nome: ");

nome = [Link]();

[Link]("Digite sua idade: ");

idade = [Link]();

[Link]("meu nome é " + nome + " e tenho " + idade + " anos.");
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite seu nome:
Francisco
Digite sua idade:
22
meu nome é Francisco e tenho 22 anos.

C:\ExemploJava>

Caracteres especiais
Dentro de uma string de texto, podem ser especificado caracteres especiais mostrados a seguir:

Hífen \'

Aspas \"

Barra invertida \\

Nova linha \n

Marca de tabulação \t

Retorno de carro \r

Backspace \b

Exemplo:

Arquivo: [Link]

//[Link]

public class ExemploJava {


public static void main(String[] args) {
[Link]("\t O livro: \"Aprendendo Java\".\n Esta nas livrarias e \\ ou Jornaleiros");
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java TesteJava
O livro: "Aprendendo Java".
Esta nas livrarias e \ ou Jornaleiros
C:\ExemploJava>

Resultado:

O livro: "Manual Prático do Programador".


Está nas livrarias e \ ou jornaleiros.
Tipos de variáveis
Variáveis são símbolos que representa um valor numérico ou string usada no programa. O uso de
variáveis dá ao programador flexibilidade para mudar o valor a qualquer momento no programa, mesmo
que a princípio pareça não ser necessário este tipo de flexibilidade.

O conteúdo de uma variável pode mudar a qualquer momento.

Por exemplo, uma variável chamado cheque poderia conter o número 12, mas o programa teria condições
de modificar esse valor a qualquer momento.

O nome de uma variável pode começar com uma letra ou sublinhado "_" seguido de números ou letras
sem espaço. Veja alguns exemplos de nomes válidos:

nome

Conta_pag

z01

_cod

Variável String
Variável String é um conjunto contínuo de caracteres alfanuméricos que não contém números usados para
cálculos. Nomes, endereços, palavras e frases são strings. Esses caracteres podem ser as letras maiúsculas,
as letras minúsculas, os números e os caracteres especiais (&, #, @, ?, + ). Exemplos:

"aluno"

"1234"

"@ internet"

"0.34"

"1 + 2"

Observação: os dados do tipo literal na linguagem de programação são sempre representados entre aspas
duplas(") ou aspas simples (').

Variáveis Numéricas
Os dados numéricos dividem-se em dois grupos: inteiros e reais.

Os números inteiros podem ser positivos ou negativos e NÃO possuem parte decimal. Este tipo de dado
é armazenado na memória do computador, exemplos:

-23
98

1350

-257

237

-2

Os números reais podem ser positivos ou negativos e possuem parte decimal. Este tipo de dado é
armazenado na memória do computador, exemplo:

23.45

346.98

-34.88

0.0

-247.0

Observação: na linguagem de programação, a separação entre a parte inteira e a parte decimal de um


número é feita pelo ponto (.), e a simples presença do ponto já significa que é um número real.

Variáveis Booleanas
Variável Booleana é uma expressão cujo resultado só pode ser verdadeiro (true) ou falso (false).

As variáveis booleanas são mais usadas em:

• Estrutura de decisão: If, Case e Ternário;


• Operadores relacionais: >, <, >= , <= , ==, != ;
• Operadores booleanos: and, or, not.

Este tipo de variável, quando armazenado na memória do computador, ocupa 1 byte, pois possui apenas
duas possibilidades de representação: true ou false.

Exemplo:

Expressão Resultado Significado

teste=true verdadeiro

x=false falso

y=true verdadeiro

a=4<2 a=false falso


b=8>3 b=true verdadeiro

c=(3>2)&&(5<4) c=false falso

d=(3>4)||(5<4) d=true verdadeiro

Comando de atribuição
O primeiro operador que você deve conhecer é o de atribuição "=". Ele atribui o conteúdo da expressão à
sua direita para a variável do seu lado esquerdo.

x=30

y=10/2 + 6

z=true

a="texto"

Regras básicas
Para criar uma variável, a variável deve obedecer as seguintes regras:

1. O primeiro caractere deve ser sempre uma letra ou um caractere sublinhado (_).
2. Os caracteres que você pode utilizar na formação das variáveis são: os números, as letras
maiúsculas, as letras minúsculas e o caractere sublinhado (_).
3. Não é permitido acentuação (acento grave, acento agudo, acento circunflexo, trema e til), por
exemplo: Antônio, mamão, difícil, cinqüenta, etc.

Dependendo da linguagem de programação usado pelo programador (ASP, Java, PHP, Javascript, Delphi,
Visual Basic e outros) cada linguagem recebe regras de programação diferente, por exemplo:

1. As variáveis podem ter qualquer tamanho. Entretanto, apenas os 63 primeiros caracteres são
utilizados pelo compilador.
2. Dependendo da linguagem de programação, a variável pode ser sensível, ou não, a letras
maiúsculas ou minúsculas, isto se chama "caso sensitivo".

O Java, por exemplo,faz diferenciação entre letras maiúsculas e minúsculas; portanto a variável NUM é
exatamente diferente a variável num;

Observação: algumas linguagens de programação são sensíveis à caixa alta e caixa baixa, um exemplo
disso é o Java, "Olá" e "OLÁ" são duas palavras totalmente diferentes. O Delphi por exemplo não é
sensível a caixa, "abc" é exatamente igual a "ABC".

3. Não podemos usar palavras reservadas em variáveis.

Palavras reservadas são nomes utilizados pelo compilador para representar comandos de controle do
programa, operadores e nomes de seções de programas. As palavras reservadas da linguagem Pascal são:
(veja a tabela abaixo)
abstact boolean break byte case cath

char class continue default do double

else extends false final finally float

for if implements import instanceof int

interface long native new null package

private protected public return short static

super switch synchronized this throw throws

transient true try void while

Além destas existem outras que embora reservadas não são utilizadas pela linguagem:

const future generic goto inner oparator

outer rest var volatile

Exemplos de variáveis válidos:

nota

NOTA

x5

A32

Nota_1

MATRICULA

nota_1

dia

IDADE

Exemplos de variáveis inválidos

5b

e 12
x-y

prova 2n

nota(2)

case

Set

matrícula

Obs: matrícula com acento no í.

Tabelas de variáveis em Java


Tipo Representação Faixa

byte Numérico Inteiro -128 a +127 (8 bits)

short Numérico Inteiro -32.768 a +32.767 (16 bits)

int Numérico Inteiro -[Link] a +[Link] (32 bits)

long Numérico Inteiro -[Link].854.775.808 a +[Link].854.775.807 (64 bits)

float Numérico Real (32 bits)

double Numérico Real (64 bits)

Boolean Lógico true ou false

char 1 caractere Qualquer caractere que vai de 0 à 65536

String Cadeia de caracteres Qualquer conjunto de caracteres

Covertendo um número inteiro (int) para (char)


ou vice-versa
Exemplo:

int x = 20;
String x = "" + (char) x;
[Link]( x );

Resolva os exercícios abaixo:

Exercício 1: Identifique o tipo dos dados:

(a) numérico inteiro;


(b) numérico real;

(c) lógico;

(d) string.

(c) true (b) 45.0 (a) 1234 (b) 0.0

(d) "aula" (d) "c * d" (a) -234 (d) "1 2 3 4"

(b) -0.342 (b) 35.23 (d) "34" (b) -18.589

(d) " " (b) -354.0 (b) -15.2 (c) false

(a) 0 (a) 897 (d) "false" (a) -23

Concatenação
Concatenar: Reunir duas strings de caracteres em um só por exemplo, combinar as duas strings "bom" e
"dia" formando uma única string "bom dia".

Arquivo: [Link]

// [Link]

public class ExemploJava {

public static void main(String[] args) {

// Exemplo 1:
String Variavel;

Variavel = "Texto1 " + "Texto2" + "\n";

// Exemplo 2:
String String1;
String String2;
String String3;
String String4;

String1 = "Isto é ";


String2 = "um texto";
String3 = "\n";
String4 = String1 + String2 + String3;

// Exemplo 3
String Nome;
String Sobrenome;

Nome = "José ";


Sobrenome = "Antônio";
String resp;

resp = "Meu nome é: " + Nome + Sobrenome;

[Link](Variavel + String4 + resp);


}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Texto1 Texto2
Isto é um texto
Meu nome é: José Antônio

C:\ExemploJava>

Convertendo valores string para numérica


Quando usamos formulários para efetuar cálculos matemáticos precisamos converter os valores strings
dos formulários em valores numéricos, para logo em seguida calcular usando operadores aritméticos e
funções matemáticas.

Se não convertermos os valores strings para numéricas impossibilita de efetuarmos cálculos matemáticos,
por exemplo:

Arquivo: [Link]

// [Link]

public class ExemploJava {

public static void main(String[] args) {

String Texto;

Texto = "";

String A = "7";
String B = "9";
int C = 5;

Texto += A + B + C;

[Link](Texto);
}
}

Resultado:
C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
795

C:\ExemploJava>

Esta operação geraria erros de programação o correto é usarmos conversores, veja o exemplo abaixo:

Arquivo: [Link]

// [Link]

public class ExemploJava {

public static void main(String[] args) {

String Texto;

Texto = "";

String A = "7";
String B = "9";
int C = 5;

Texto += [Link](A) + [Link](B) + C;

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
21.0

C:\ExemploJava>

Observando que C já é um valor numérico, enquanto A e B são strings.

Veja alguns conversores:

Inteiros:

[Link](string)

[Link](string)

[Link](string)
[Link](string)

Reais:

[Link](string)

[Link](string)

Booleanos:

[Link](string)

Veja outro exemplo:

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


String Altura;
String Largura;

Scanner teclado = new Scanner([Link]);

[Link]("Digite a Altura:");
Altura = [Link]();

[Link]("Digite a Largura:");
Largura = [Link]();

float Area;
Area = [Link](Altura) + [Link](Largura) / 2;

[Link]("A área do triângulo é de: " + Area);


}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite a Altura:
250
Digite a Largura:
350
A área do triângulo é de: 425.0

C:\ExemploJava>

Os valores Largura e Altura são valores strings e Area é um valor numérico. No exemplo acima usamos
os formulários Altura e Largura, os valores Largura e Altura são valores strings enquanto Area é um valor
numérico.

Se efetuarmos os cálculos Area = Altura * Largura/2 sem converter string em numérica geraríamos erros
de programação.

O correto éArea=parseFloat(Altura) * parseFloat(Largura)/2.

Exercício 1: Use a calculadora abaixo:

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


Scanner teclado = new Scanner([Link]);

String campo1 = "";


String campo2 = "";
String opcao = "";

[Link]("Digite o 1º Número: ");


campo1 = [Link]();

[Link]("Digite o 2º Número: ");


campo2 = [Link]();

[Link]("Digite o Valor:");
[Link]("Adição = 0");
[Link]("Subtração = 1");
[Link]("Multiplicação = 2");
[Link]("Divisão = 3");
opcao = [Link]();

float fCampo1 = 0;
float fCampo2 = 0;
int iOpcao = 0;

float resultado = 0;
fCampo1 = [Link](campo1);
fCampo2 = [Link](campo2);
iOpcao = [Link](opcao);

if (iOpcao == 0) {
resultado = fCampo1 + fCampo2;
} else if (iOpcao == 1) {
resultado = fCampo1 - fCampo2;
} else if (iOpcao == 2) {
resultado = fCampo1 * fCampo2;
} else if (iOpcao == 3) {
resultado = fCampo1 / fCampo2;
}

[Link]("Seu resultado é: " + resultado);


}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite o 1º Número:
200
Digite o 2º Número:
50
Digite o Valor:
Adição = 0
Subtração = 1
Multiplicação = 2
Divisão = 3
2
Seu resultado é: 10000.0

C:\ExemploJava>

Exercício 2: Use esta outra calculadora

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


Scanner teclado = new Scanner(System. in );
String campo1 = "";
String campo2 = "";
String campo3 = "";

[Link]("Campo1: ");
campo1 = [Link]();

[Link]("Campo2: ");
campo2 = [Link]();

[Link]("Campo3: ");
campo3 = [Link]();

float Adicao = 0;
float Multiplicacao = 0;

Adicao = [Link](campo1) + [Link](campo2) + [Link](campo3);


Multiplicacao = [Link](campo1) * [Link](campo2) * [Link](campo3);

[Link]("O Resultado da Adição é: " + Adicao);


[Link]("O Resultado da Multiplicação é: " + Multiplicacao);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Campo1:
7
Campo2:
2
Campo3:
3
O Resultado da Adição é: 12.0
O Resultado da Multiplicação é: 42.0

C:\ExemploJava>

Operadores
Operadores são símbolos que representa uma operação matemática; são três tipos de operadores:

• Operadores Aritméticos ( + , -, * , /)
• Operadores Relacionais (<, >, =, <= , >= )
• Operadores Booleanos (And, Or, Not)

O operador mais usado é o operador de atribuição "=". Ele atribui o conteúdo da expressão à sua direita
para a variável do seu lado esquerdo.
X=40

X=20/10 + 5

X=Y

Operadores Aritméticos
Operadores aritméticos são símbolos usados pelo computador + , -, * , /, para efetuar cálculos
matemáticos.

Os operadores aritméticos são os seguintes:

Operadores Nome Utilização

+ Adição Soma valores

- Subtração Subtrai valores

* Multiplicação Multiplica valores

/ Divisão Divide valores

% Módulo Determina o resto da divisão

Veja os exemplos abaixo:

Exemplo 1: Efetue cálculos usando operadores aritméticos

Operação Resultado

5+8 13

12-7 5

3*6 18

10/3 3.333333

10 % 3 1

Exemplo 2: Efetue cálculos aritméticos usando parênteses

Operação Resultado

4*2+1 9

4 * (2 + 1) 12

3 + 5 * 4-2 21
(3 + 5) * (4-2) 16

Usando Operadores Aritméticos


+ Adição

- Subtração

* Multiplicação

/ Divisão

( ) Parênteses

Lista de Exercícios:

Exercício 1. Faça um programa que receba quatro números inteiros, calcula e mostre a soma desses
números

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


Scanner teclado = new Scanner(System. in );

String n1 = "";
String n2 = "";
String n3 = "";

[Link]("Digite o 1º número: ");


n1 = [Link]();

[Link]("Digite o 2º número: ");


n2 = [Link]();

[Link]("Digite o 2º número: ");


n3 = [Link]();

float Soma = 0;

Soma = [Link](n1) + [Link](n2) + [Link](n3);

[Link]("O Resultado da Adição é: " + Soma);


}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite o 1º número:
2
Digite o 2º número:
2
Digite o 2º número:
2
O Resultado da Adição é: 6.0

C:\ExemploJava>

Exercício 2. Faça um programa que receba três notas, calcule e mostre a média aritmética entre elas.

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


Scanner teclado = new Scanner(System. in );

String base = "";


String altura = "";

[Link]("Digite a Base: ");


base = [Link]();

[Link]("Digite a Altura: ");


altura = [Link]();

float area = 0;

area = ([Link](base) * [Link](altura)) / 2;

[Link]("O Resultado da Área é: " + area);

}
}

Resultado:
C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite a Base:
22.7324
Digite a Altura:
75.356002
O Resultado da Área é: 856.5114

C:\ExemploJava>

Exercício 4. Faça um programa que receba o salário de um funcionário, calcule e mostre o novo salário,
sabendo-se que este sofreu um aumento de 25%.

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


Scanner teclado = new Scanner(System. in );

String Salario = "";


String altura = "";

[Link]("Salário: ");
Salario = [Link]();

float fSalario = 0;
float aumento = 0;
float novoSalario = 0;

fSalario = [Link](Salario);
aumento = fSalario * 25 / 100;
novoSalario = fSalario + aumento;

[Link]("Seu novo Salário é de " + novoSalario);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Salário:
1800
Seu novo Salário é de 2250.0

C:\ExemploJava>

Exercício 5. Crie um programa que dê o resultado da soma, do produto e da diferença.

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


Scanner teclado = new Scanner(System. in );

String _a = "";
String _b = "";

[Link]("A: ");
_a = [Link]();

[Link]("B: ");
_b = [Link]();

float A = 0;
float B = 0;

A = [Link](_a);
B = [Link](_b);

[Link]("Operações com números " + A + " e " + B + ":");


[Link]("Soma = " + (A + B));
[Link]("Produto = " + (A * B));
[Link]("Diferença = " + (A - B));

}
}

Arquivo [Link]

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
A:
77
B:
80
Operações com números 77.0 e 80.0:
Soma = 157.0
Produto = 6160.0
Diferença = -3.0

C:\ExemploJava>

Exercício 6. Crie um programa que dê o quadrado de um número

Arquivo: [Link]

// [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


Scanner teclado = new Scanner(System. in );

String _n = "";

[Link]("Digite um numero: ");


_n = [Link]();

float Quadrado = 0;

Quadrado = [Link](_n) * [Link](_n);

[Link]("O quadrado de " + _n + " é " + Quadrado);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite um numero:
44
O quadrado de 44 é 1936.0

C:\ExemploJava>
Operadores Relacionais
Operadores relacionais são operadores que permitem ao programador comparar dois (ou mais) valores ou
expressões.

Os operadores relacionais típicos são: (veja a tabela abaixo:)

Operador Significado Exemplo

== Igual 3==(4-1)

!= Diferente 5 != (3 + 3)

< Menor que 3<23

> Maior que 41>39

<= Menor ou igual a 5 <= 6

>= Maior ou igual a 10 >= 10

Veja os exemplos abaixo:

Exemplo 1. Veja o seguinte resultado

Operação Resultado

23<3 false (falso)

41>39 true (verdadeiro)

6 <= 5 false (falso)

10 >= 10 true (verdadeiro)

7==8 false (falso)

48 != 22 true (verdadeiro)

Exemplo 2. Se a=100 e b=200, calcule:

Operação Resultado

a>b false (falso)

b>a true (verdadeiro)

a != b true (verdadeiro)

Exemplo 3. Resolva a seguinte operação:


Operação Resultado

23==(4 * 2 + 3 * 5) true (verdadeiro)

17==(12/2 + 8-5) false (falso

23==(4 * 2 + 3 * 5) 17==(12/2 + 8-5)

23==(8 + 15) 17==6 + 8-5

23==23 17==9

true false

Exemplo 4. Dadas as strings abaixo resolva:

Operação Resultado

"FRED".equals("FRED") true (verdadeiro)

! "SAM".equals("FRED") true (verdadeiro)

"TWO".equals("ONE") false (falso)

! "TRHEE".equals("TRHEE") false (falso)

Comparações de strings não são feitas com o operador == e sim com o método equals ou com
equalsIgnoreCase (que ignora maiúsculas e minúsculas).

Operadores Booleanos
AND, OR, XOR e NOT são as operações fundamentais a lógica booleana.

Estes operadores só aceitam como operandos valores lógicos: TRUE ou FALSE.

Veja a tabela abaixo

Operador Significado

And ( && ) Verdadeiro se ambos os lados da expressão forem verdadeiros.

Or ( || ) Verdadeiro se um ou ambos os lados da expressão forem verdadeiros

Xor ( ^ ) Verdadeiro se apenas um lado for verdadeiro

Not ( ! ) Reverte verdadeiro para falso e vice-versa

Se você está acostumado com o C, C + + , Java e Javascript já deve ter notado que seus operadores
booleanos usam símbolos diferentes.

And é substituído por &&

Or é substituído por ||

e Not é substituído por !

Se o leitor não teve nenhum contato com essas linguagens, poderá ter algumas dificuldades iniciais de
escrever este tipo de código. Por exemplo:

(x>2)&&(y==9)

Leia-se: x maior que 2 E y igual a 9

(x<3)||(x>8)

Leia-se: x menor que 3 OU x maior que 8

if((altura>170)||(idade>18)) {

// Ação...

Leia-se: se altura maior que 170 centímetros OU idade maior que 18 anos...

Veja a tabela abaixo:

Símbolo Operação

&& And (E)

|| Or (Ou)

! Not (Não)

Existem os operadores binários (semelhantes aos operadores acima), veja a tabela abaixo:

Símbolo Operação

& And lógico

| Or lógico

^ Xor lógico

Iremos estudar cada um:

AND (&&) é verdadeiro se ambas as entradas forem verdadeiras, veja o quadro abaixo:

(a==true)&&(b==true) o resultado é true (verdadeiro)


(a==false)&&(b==true) o resultado é false (falso)

(a==true)&&(b==false) o resultado é false (falso)

(a==false)&&(b==false) o resultado é false (falso)

Por exemplo a expressão:

(3 + 2==5)&&(6 + 2==8)

É verdadeira porque as expressões em ambos os lados de And são verdadeiras. no entanto, a expressão:

(4 + 3==9)&&(3 + 3==6)

É falsa, porque a expressão à esquerda de And é falsa. Lembre-se disto quando combinar expressões com
And: se qualquer expressão for falsa, toda a expressão será falsa.

OR (||) é verdadeiro se qualquer uma das entradas for verdadeira, veja o quadro abaixo:

(a==true)||(b==true) o resultado é true (verdadeiro)

(a==false)||(b==true) o resultado é true (verdadeiro)

(a==true)||(b==false) o resultado é true (verdadeiro)

(a==false)||(b==false) o resultado é false (falso)

Por exemplo, as expressões:

(3 + 6==2)||(4 + 4==8)

(4 + 1==5)||(7 + 2==9)

São ambas verdadeiras porque pelo menos uma das expressões comparada é verdadeira. Observe que no
segundo caso, ambas as expressões comparadas são verdadeiras, o que também torna verdadeira uma
expressão Or.

Um XOR (OU exclusivo) é verdadeiro se somente uma das entradas for verdadeira e não ambas, veja o
quadro abaixo:

(a==true)^(b==true) o resultado é false (falso)

(a==false)^(b==true) o resultado é true (verdadeiro)

(a==true)^(b==false) o resultado é true (verdadeiro)


(a==false)^(b==false) o resultado é false (falso)

Por exemplo, a expressão:

(3 + 6==2)^(4 + 4==8)

É verdadeira porque apenas a expressão (4 + 4=8) é verdadeira. No entanto a expressão:

(4 + 1==5)^(7 + 2==9)

É falsa, porque ambas as expressões são verdadeiras.

NOT (!) Uma operação lógica booleana que inverte a entrada. Se a entrada for true, a saída é false, e vice-
versa, veja o quadro abaixo:

!(true) o resultado é false

!(false) o resultado é true

Por exemplo, a expressão:

(4 + 3==5)

Não é verdadeira; no entanto a expressão

!(4 + 3==5)

É verdadeira porque o operador Not reverte para verdadeiro o resultado falso da expressão (4 + 3=5).

Observe esta expressão:

(4 + 5==9) && !(3 + 1==3)

Esta expressão é verdadeira ou falsa? Se você disse verdadeira, compreende a forma como funcionam os
operadores lógicos. As expressões em ambos os lados de And são verdadeiras, então toda a expressão é
verdadeira.

Veja exemplos abaixo:

Exemplo 1. Resulta as seguintes operações booleanas

Expressão Resultado

(3>2)&&(5>4) true (verdadeiro)

(2>1)&&(7>8) false (falso)

(3>4)||(9>2) true (verdadeiro)

(7>7)||(4>4) false (falso)


(2==2)^(5==5) false (falso)

(4>5)^(4<5) true (verdadeiro)

! true false (falso)

! (9<1)||(9<1) true (verdadeiro)

Exemplo 2. Se a=100, b=200 e c=300, resolva:

Expressão Resultado

b>a && c>b true (verdadeiro)

b>a && b==c falso (falso)

b>a || b==c true (verdadeiro)

b>a ^ c>b false (falso)

! a <> b false (falso)

Exemplo 3. Resolva a seguinte operação:

(4 * (3 + 5))/2>100 || (5 * (3 + 4)/2<100)

Solução

(4 * (3 + 5))/2>100 || (5 * (3 + 4)/2<100)

(4 * 8)/2>100 || (5 * 7/2<100)

32/2>100 || (35/2<100)

16>100 || 17.5<100

false || false

false

Hierarquia dos operadores


Observe a lista de prioridades abaixo:

• Em 1º lugar estão as variáveis. Exemplo a=4 e b=8 => c=a + b


• Em 2º lugar estão as propriedades do objeto. Exemplo: [Link]=7 e [Link]=5 =>
media=([Link] + [Link])/2
• Em 3º lugar estão os parênteses. Exemplo: 3 * (4 + 1) * 2
• Em 4º lugar estão as funções. Exemplo: raiz quadrada, seno, cosseno, tangente, logaritmos e
outros.
• Em 5º lugar está a potenciação. Exemplo: 3^4 + 2
• Em 6º lugar estão multiplicação ( * ), divisão (/), e módulo (%), na ordem em que aparecerem da
esquerda para direita. Exemplo: 7 + 4/2 * 6/3-8
• Em 7º lugar estão adição ( + ) e subtração (-), na ordem em que aparecerem da esquerda para
direita. Exemplo: 5 + 4-7-8 + 3-2 + 9
• Em 8º lugar estão os operadores relacionais, maior que (>), menor que (<), maior ou igual ( >= ),
menor ou igual ( <= ), igual (=), diferente ( <> )
• Em 9º lugar está o operador booleano NOT. Exemplo: (4>5) Or Not(3>6)
• Em 10º lugar estão os operadores booleanos AND, OR e XOR. Exemplo: (3<7)&&(8>7)

Resumindo

Nível de prioridade Operadores Ordem

Mais alta: 1 Variáveis da esquerda para a direita

2 Propriedades do Objeto da esquerda para a direita

3 Parênteses da esquerda para a direita

4 Funções da esquerda para a direita

5 Potenciação da esquerda para a direita

6 * , /, % da esquerda para a direita

7 +,- da esquerda para a direita

8 >, <, >= , <= , ==, != da esquerda para a direita

9 ! da esquerda para a direita

Mais baixa: 10 &&, || da esquerda para a direita

O comando If
O comando If é uma instrução de linguagem de programação que compara dois ou mais conjuntos de
dados e verifica os resultados. Se o resultado for verdadeiro, as instruções que seguem o comando If serão
executados; se não, as instruções que seguirem o comando Else serão executados. Veja o exemplo abaixo:

• Se A for verdadeiro (true) execute B


• Se A for falso (false) execute C

Vejamos:

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {

public static void main(String[] args) {

boolean A;

A = true;
if (A == true) {
[Link]("Execute B");
} else {
[Link]("Execute C");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Execute B

C:\ExemploJava>

Outro exemplo a seguir também é um exemplo bem simples:

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {

public static void main(String[] args) {

boolean teste;

teste = true;
if (teste) {
[Link]("Esta linha será impressa");
} else {
[Link]("Esta linha não será impressa");
}
}
}

Resultado
C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Esta linha será impressa

C:\ExemploJava>

Usando a cláusula If
Vamos ver um exemplo:

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {

public static void main(String[] args) {

int Descontos;
String Texto;

Descontos = 315;

Texto = "";
if (Descontos != 0) {
Texto = "Descontos deste mês: " + Descontos;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Descontos deste mês: 315

C:\ExemploJava>
O sistema só executará o comando [Link] quando o valor da variável desconto for maior que 0.
Agora, ficou claro que este comando é muito útil para dar ao sistema uma espécie de "poder de decisão".
na verdade, estamos programando o sistema para cada tipo de situação e então o software agirá conforme
a necessidade de cada problema, situação ou estado do sistema naquele momento.

Usando a cláusula Else


Podemos dar ao fluxo mais uma opção utilizando a cláusula else. Nesse caso, o fluxo executará o bloco
antes ou depois desta cláusula. No exemplo anterior, podemos incrementar o código com mais uma
situação.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {

public static void main(String[] args) {

int Descontos;
String Texto;

Descontos = 315;
Texto = "";

if (Descontos != 0) {
Texto = "Descontos deste mês: " + Descontos;
} else {
Texto = "Não há descontos este mês.";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Descontos deste mês: 315

C:\ExemploJava>

Para entender melhor o exemplo troque o valor da variável Descontos para zero e teste novamente.

Usando a cláusula else if


A cláusulaelse ifnos permite ter várias expressões dentro do mesmo comando If. Isso permite escolher
entre várias situações e, caso nenhuma retorne verdadeiro, o fluxo irá para a cláusula else, se esta for
utilizada. Veja

Arquivo: [Link]

// [Link]
import [Link];

public class ExemploJava {

public static void main(String[] args) {

int Salario;

Salario = 1550;

if (Salario < 1250) {


[Link]("Remuneração isenta de imposto");
} else if (Salario >= 1250 && Salario < 1800) {
[Link]("Retenção de 5% para imposto mensal");
} else if (Salario >= 1800 && Salario < 2200) {
[Link]("Retenção de 7% para imposto mensal");
} else {
[Link]("Retenção de 9% para imposto mensal");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Retenção de 5% para imposto mensal

C:\ExemploJava>

Podemos observar que a cláusula else if pode ser utilizada várias vezes, permitindo calcular várias faixas
para um valor de salário. Aqui, utilizamos a variável Salario, mas este valor pode vir de um banco de
dados que será alimentado por usuários do sistema, em momento totalmente distinto a sua programação.

Por isso, os sistemas são bastante flexíveis aos dados e devem tratá-los de acordo com as normas e
legislações vigentes.

Podemos verificar isso no exemplo anterior, no qual para cada faixa salarial é aplicado um imposto que,
em um software oficial, deve estar de acordo com as normas legais.

Usando estrutura de decisão If


Lista de exercícios
Exercício 1. Elaborar um algoritmo para receber um número inteiro e informar se ele é par ou ímpar.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

Scanner teclado = new Scanner(System. in );

[Link]("Digite um número: ");


String num = [Link]();

int numero;
numero = [Link](num);

if (numero % 2 == 0) {
[Link]("Par");
} else {
[Link]("Ímpar");
}

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite um número
245
Ímpar

C:\ExemploJava>

Exercício 2. Receber a temperatura - em graus Celsius - de uma pessoa e emitir uma mensagem se ela
estiver com febre.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {

public static void main(String[] args) {


[Link]("Temperatura:");
Scanner teclado = new Scanner(System. in );
String temperatura = [Link]();

int int_temperatura;
int febre;

int_temperatura = [Link](temperatura);
febre = 37;
if (int_temperatura >= febre) {
[Link]("Paciente com febre");
} else {
[Link]("Paciente sem febre");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Temperatura:
45
Paciente com febre

C:\ExemploJava>

Exercício 3. Crie um algoritmo que informa se você é do sexo masculino ou feminino

Arquivo [Link]

/*
Não é possível fazer uma equação

if( s_n == "s")

Geraríamos um erro.
Comparações de objetos não são feitas com o operador == e sim com o método equals ou com

equalsIgnoreCase (que ignora maiúsculas e minúsculas), assim:

if("s".equals(s_n))

ou if("s".equalsIgnoreCase(s_n))

*/
import [Link];

public class ExemploJava {


public static void main(String[] args) {

[Link]("Você é do sexo masculino? s/n??");


Scanner teclado = new Scanner(System. in );
String s_n;

s_n = [Link]();

if ("s".equals(s_n)) {
[Link]("Você é do sexo masculino");
} else {
[Link]("Você é do sexo feminino");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Você é do sexo masculino? s/n??
s
Você é do sexo masculino

C:\ExemploJava>

Exercício 4. Faça um programa que indique se o ano é bissexto ou não.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

[Link]("Digite o ano:");
Scanner teclado = new Scanner(System. in );
String ano = [Link]();

int Ano = [Link](ano);

String Texto;

Texto = "";

if (Ano % 4 == 0) {
Texto = Ano + " é bissexto";
} else {
Texto = Ano + " não é bissexto";
}
[Link](Texto);
}
}
Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite o ano:
2004
2004 é bissexto

C:\ExemploJava>

Usando Operadores relacionais


< Menor que

> Maior que

== Igual a

<= Menor ou Igual a

>= Maior ou igual a

!= Diferente

Lista de exercícios

Exercício 1. Faça um programa que indique se ele é maior, menor ou igual a 100.

Arquivo [Link]
// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

[Link]("Digite um número:");
Scanner teclado = new Scanner(System. in );
String numero = [Link]();

float float_numero;

float_numero = [Link](numero);

if (float_numero < 100) {


[Link]("O número é menor do que 100");
} else {
[Link]("O número é maior ou igual a 100");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite um número:
535
O número é maior ou igual a 100

C:\ExemploJava>

Exercício 2. Faça um programa que indique se ele é positivo, negativo ou igual a 0.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

[Link]("Digite um número:");
Scanner teclado = new Scanner(System. in );
String n = [Link]();

float float_n;

float_n = [Link](n);

if (float_n > 0) {
[Link]("O número é positivo");
} else {
[Link]("O número ou é igual a 0 ou é negativo");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite um número:
-453
O número ou é igual a 0 ou é negativo

C:\ExemploJava>

Exercício 3. Faça um programa que receba dois números e mostre o maior.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {
Scanner teclado = new Scanner(System. in );

[Link]("Digite o primeiro número:");


String _num1 = [Link]();

[Link]("Digite o segundo número:");


String _num2 = [Link]();

String Texto;

float num1 = [Link](_num1);


float num2 = [Link](_num2);

Texto = "";

if (num1 > num2) {


Texto = "O maior número é: " + num1;
} else if (num1 < num2) {
Texto = "O maior número é: " + num2;
} else if (num1 == num2) {
Texto = "Os números são iguais";
}

[Link](Texto);
}
}
Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite o primeiro número:72
Digite o segundo número:82
O maior número é: 82.0

C:\ExemploJava>

Exercício 4. Criar um algoritmo que receba a idade e informe se é criança, adolescente, adulto ou idoso:

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {
Scanner teclado = new Scanner(System. in );

[Link]("Qual a sua idade?");


String idade = [Link]();

float float_idade;

float_idade = [Link](idade);

if (float_idade < 13) {


[Link]("Você é uma criança");
} else if (float_idade < 18) {
[Link]("Você é um adolescente");
} else if (float_idade < 65) {
[Link]("Você é um adulto");
} else {
[Link]("Você é um idoso");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Qual a sua idade?
35
Você é um adulto

C:\ExemploJava>
Usando operadores Booleanos
AND && (E)

OR || (OU)

NOT ! (NÃO)

Lista de exercícios

Exercício 1. Faça um programa que receba três notas de um aluno, calcule e mostre a média aritmética e
diga se foi aprovado, reprovado ou em recuperação.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {
Scanner teclado = new Scanner(System. in );

[Link]("Digite a primeira nota:");


String _nota1 = [Link]();

[Link]("Digite a segunda nota:");


String _nota2 = [Link]();

[Link]("Digite a terceira nota:");


String _nota3 = [Link]();

float nota1 = [Link](_nota1);


float nota2 = [Link](_nota2);
float nota3 = [Link](_nota3);

float media;
String Texto;

Texto = "";

media = (nota1 + nota2 + nota3) / 3;

if (media >= 0 && media < 5) {


Texto = "Reprovado";
} else if (media >= 5 && media < 7) {
Texto = "Em recuperação";
} else if (media >= 7 && media <= 10) {
Texto = "Aprovado";
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite a primeira nota:
7.7
Digite a segunda nota:
8.9
Digite a terceira nota:
6.2
Aprovado

C:\ExemploJava>

Exercício 2. Faça um programa que receba três notas de um aluno, calcule e mostre a média aritmética e
diga se tirou nota A, B, C, D, ou E.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {
Scanner teclado = new Scanner(System. in );

[Link]("Digite a primeira nota:");


String _nota1 = [Link]();

[Link]("Digite a segunda nota:");


String _nota2 = [Link]();

[Link]("Digite a terceira nota:");


String _nota3 = [Link]();

float nota1 = [Link](_nota1);


float nota2 = [Link](_nota2);
float nota3 = [Link](_nota3);

float media;
String Texto;

Texto = "";

media = (nota1 + nota2 + nota3) / 3;

if (media >= 8 && media <= 10) {


Texto = "nota A";
} else if (media >= 6 && media < 8) {
Texto = "nota B";
} else if (media >= 4 && media < 6) {
Texto = "nota C";
} else if (media >= 2 && media < 4) {
Texto = "nota D";
} else if (media >= 0 && media < 2) {
Texto = "nota E";
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite a primeira nota:
9.2
Digite a segunda nota:
7.4
Digite a terceira nota:
4.5
nota B

C:\ExemploJava>

Exercício 3. Dados três valores A, B, C, verificar se eles formam um triângulo eqüilátero, isósceles ou
escaleno.

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {
Scanner teclado = new Scanner(System. in );

[Link]("Lado A:");
String AX = [Link]();

[Link]("Lado B:");
String BX = [Link]();

[Link]("Lado C:");
String CX = [Link]();

float A;
float B;
float C;
A = [Link](AX);
B = [Link](BX);
C = [Link](CX);

if (A < (B + C) && B < (A + C) && C < (A + B)) {


if (A == B && B == C) {
[Link]("Triângulo Eqüilátero");
} else if (A == B || A == C || B == C) {
[Link]("Triângulo Isósceles");
} else {
[Link]("Triângulo Escaleno");
}
} else {
[Link]("Estes valore não formam um triângulo");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Lado A:
30
Lado B:
30
Lado C:
30
Triângulo Eqüilátero

C:\ExemploJava>

Exercício 4. Crie uma estrutura de decisão comparando dois alunos e informe se ele foram aprovados ou
reprovados

Arquivo [Link]

/*
Não é possível fazer uma equação

if(Aluno1=="Aprovado" && Aluno2=="Aprovado")

Geraríamos um erro.
Comparações de objetos não são feitas com o operador == e sim com o método equals ou com

equalsIgnoreCase (que ignora maiúsculas e minúsculas), assim:

if("Aprovado".equals(Aluno1) && "Aprovado".equals(Aluno2))

if("Aprovado".equalsIgnoreCase(Aluno1) && "Aprovado".equalsIgnoreCase(Aluno2))

*/
// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Aluno1 = "Aprovado";


String Aluno2 = "Reprovado";

if ("Aprovado".equals(Aluno1) && "Aprovado".equals(Aluno2)) {


[Link]("Ambos estão aprovados!");
} else {
[Link]("Um dos alunos foi reprovado");
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Um dos alunos foi reprovado

C:\ExemploJava>

Comando Case
Repare nesta outra construção para comando if aninhado:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;
int mes;

Texto = "";
mes = 3;

if (mes == 1) {
Texto = "Jan";
} else if (mes == 2) {
Texto = "Fev";
} else if (mes == 3) {
Texto = "Mar";
} else if (mes == 4) {
Texto = "Abr";
} else if (mes == 5) {
Texto = "Mai";
} else if (mes == 6) {
Texto = "Jun";
} else if (mes == 7) {
Texto = "Jul";
} else if (mes == 8) {
Texto = "Ago";
} else if (mes == 9) {
Texto = "Set";
} else if (mes == 10) {
Texto = "Out";
} else if (mes == 11) {
Texto = "Nov";
} else if (mes == 12) {
Texto = "Dez";
} else {
Texto = "Mês inválido";
}

[Link](Texto);
}
}

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Mar

C:\ExemploJava>

Embora essa construção seja perfeitamente válida, há uma forma mais eficiente de se obter os mesmos
resultados. É o comando case cujo funcionamento é muito parecido com os if's aninhados:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;
int mes;

Texto = "";
mes = 3;

switch (mes) {
case 1:
Texto = "Jan";
break;
case 2:
Texto = "Fev";
break;
case 3:
Texto = "Mar";
break;
case 4:
Texto = "Abr";
break;
case 5:
Texto = "Mai";
break;
case 6:
Texto = "Jun";
break;
case 7:
Texto = "Jul";
break;
case 8:
Texto = "Ago";
break;
case 9:
Texto = "Set";
break;
case 10:
Texto = "Out";
break;
case 11:
Texto = "Nov";
break;
case 12:
Texto = "Dez";
break;
default:
Texto = "Mês inválido!";
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Mar

C:\ExemploJava>

Este comando permite que várias comparações sejam feitas e, no final, apenas uma seja escolhida para
executar um código específico da condição selecionada. Ele funciona igualmente a vários ifs, mas agora
ele testa os valores de uma mesma variável.

Vejamos um exemplo:

Arquivo [Link]
// [Link]
public class ExemploJava {
public static void main(String[] args) {

int valor;
String variavel = "";

valor = 2;
switch (valor) {
case 0:
variavel = "O valor da variável é 0 ";
break;
case 1:
variavel = "O valor da variável é 1 ";
break;
case 2:
variavel = "O valor da variável é 2 ";
break;
case 3:
variavel = "O valor da variável é 3 ";
break;
case 4:
variavel = "O valor da variável é 4 ";
break;
}

[Link](variavel);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
O valor da variável é 2

C:\ExemploJava>

No exemplo anterior, o comando Case testará linha a linha, em busca de um case que corresponda ao
valor da variável.

Quando encontrar o valor correspondente, executará os comandos que virão logo após este case.

Em linguagens de programação tais como o C, Java, Javascript PHP, esses comandos estarão entre { }, se
for mais que um. Teste o código e veja como fica.

Usando o comando break


Quando precisamos executar apenas o case que corresponda ao valor da variável, utilizaremos um
comando que tem a característica de para fluxos de execução, o comando break. Caso esse não seja
utilizado, todos os cases após o case que corresponda ao valor da variável de referência serão executados.

Utilizando o exemplo anterior, veremos como ficaria o código com o uso do comando break:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int valor;
String variavel = "";

valor = 2;
switch (valor) {
case 0:
variavel = "O valor da variável é 0 ";
break;
case 1:
variavel = "O valor da variável é 1 ";
break;
case 2:
variavel = "O valor da variável é 2 ";
break;
case 3:
variavel = "O valor da variável é 3 ";
break;
case 4:
variavel = "O valor da variável é 4 ";
break;
}

[Link](variavel);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
O valor da variável é 2

C:\ExemploJava>

No exemplo anterior, apenas os comandos que correspondam ao case que tem o mesmo valor da variável
serão executados.

Teste os exemplos anteriores, veja a diferença entre eles e descobrirá que o exemplo que possui o break é,
nesse caso, o correto.

Exemplo 1. Determine o número de dias durante um mês


Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

Scanner teclado = new Scanner(System. in );

[Link]("Digite o mês: ");


String mes = [Link]();

[Link]("Digite o ano: ");


String ano = [Link]();

int Mes = [Link](mes);


int Ano = [Link](ano);

int NumDias = 0;

switch (Mes) {
case 4:
case 6:
case 9:
case 11:
NumDias = 30;
break;
case 2:
if (Ano % 4 == 0) {
NumDias = 29;
} else {
NumDias = 28;
}
break;
default:
NumDias = 31;
break;
}

[Link]("O mes " + Mes + " tem " + NumDias + " dias.");

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite o mês: 12
Digite o ano: 2002
O mes 12 tem 31 dias.
C:\ExemploJava>

Exemplo 2. Crie um algoritmo que informe o dia da semana

Arquivo [Link]

/*
Não use getYear, getDay (Como no Javascript).
a) São métodos "deprecated" - ou seja, não devem ser usados. Em vez disso, use [Link].

b) Você não leu a documentação direito. getYear lhe volta o ano menos 1900, ou seja, para 2006 ele lhe

retorna 2006 - 1900 = 106. getDay volta o dia da semana, sendo 0 = Domingo. E getMonth lhe retorna 0

para janeiro, 1 para fevereiro, e assim por diante.

c) Quando a linguagem Java foi definida, só existia o [Link], e ela era bem boboca (o próprio

James Gosling que a escreveu, e ele não quis pôr um monte de frescuras nela)
Na versão 1.1 alguém na Sun comprou um monte de código fonte da Taligent, uma joint-venture entre a

IBM, a Apple e mais algumas companhias. Nesse pacotão veio a classe [Link], que é

terrivelmente complicada, e para encurtar a conversa eles disseram que tínhamos de usar [Link]

E [Link], sendo que aquelas coisas tipo "getDate", "getMonth", "getYear" que existem em

[Link] não deveriam mais ser usadas.


*/
// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

String Texto;
Texto = "";
// Nome do arquivo: [Link]
Calendar DataToda = [Link]();

int DiaDaSemana = [Link](Calendar.DAY_OF_WEEK);

switch (DiaDaSemana) {

case 1:
Texto = "Domingo";
break;
case 2:
Texto = "Segunda";
break;
case 3:
Texto = "Terça";
break;
case 4:
Texto = "Quarta";
break;
case 5:
Texto = "Quinta";
break;
case 6:
Texto = "Sexta";
break;
case 7:
Texto = "Sábado";
break;
}

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Sexta

C:\ExemploJava>

Exemplo 3: Crie um algoritmo que dê um aviso de bom dia, boa tarde e boa noite:

Arquivo [Link]

/*
Não use getYear, getDay (Como no Javascript).
a) São métodos "deprecated" - ou seja, não devem ser usados. Em vez disso, use [Link].

b) Você não leu a documentação direito. getYear lhe volta o ano menos 1900, ou seja, para 2006 ele lhe

retorna 2006 - 1900 = 106. getDay volta o dia da semana, sendo 0 = Domingo. E getMonth lhe retorna 0

para janeiro, 1 para fevereiro, e assim por diante.

c) Quando a linguagem Java foi definida, só existia o [Link], e ela era bem boboca (o próprio

James Gosling que a escreveu, e ele não quis pôr um monte de frescuras nela)
Na versão 1.1 alguém na Sun comprou um monte de código fonte da Taligent, uma joint-venture entre a

IBM, a Apple e mais algumas companhias. Nesse pacotão veio a classe [Link], que é

terrivelmente complicada, e para encurtar a conversa eles disseram que tínhamos de usar [Link]

E [Link], sendo que aquelas coisas tipo "getDate", "getMonth", "getYear" que existem em

[Link] não deveriam mais ser usadas.


*/
// [Link]
import [Link];
public class ExemploJava {
public static void main(String[] args) {

String Texto;
Texto = "";
Calendar DataToda = [Link]();

int HoraAtual = [Link](Calendar.HOUR_OF_DAY);

switch (HoraAtual) {
case 6:
case 7:
case 8:
case 9:
case 10:
case 11:
Texto = "Bom dia!";
break;
case 12:
case 13:
case 14:
case 15:
case 16:
case 17:
Texto = "Boa tarde!";
break;
default:
Texto = "Boa noite!";
break;
}

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Boa noite!

C:\ExemploJava>

Exemplo 4. Crie um programa que gerencie um caixa eletrônico

Arquivo [Link]

/*
Não use getYear, getDay (Como no Javascript).
a) São métodos "deprecated" - ou seja, não devem ser usados. Em vez disso, use [Link].

b) Você não leu a documentação direito. getYear lhe volta o ano menos 1900, ou seja, para 2006 ele lhe
retorna 2006 - 1900 = 106. getDay volta o dia da semana, sendo 0 = Domingo. E getMonth lhe retorna 0

para janeiro, 1 para fevereiro, e assim por diante.

c) Quando a linguagem Java foi definida, só existia o [Link], e ela era bem boboca (o próprio

James Gosling que a escreveu, e ele não quis pôr um monte de frescuras nela)
Na versão 1.1 alguém na Sun comprou um monte de código fonte da Taligent, uma joint-venture entre a

IBM, a Apple e mais algumas companhias. Nesse pacotão veio a classe [Link], que é

terrivelmente complicada, e para encurtar a conversa eles disseram que tínhamos de usar [Link]

E [Link], sendo que aquelas coisas tipo "getDate", "getMonth", "getYear" que existem em

[Link] não deveriam mais ser usadas.


*/
// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

[Link]("Menu Principal");
[Link]("---------------");
[Link]("1 - Inclusão");
[Link]("2- Alteração");
[Link]("3 - Exclusão");
[Link]("4 - Relatório");
[Link]("5 - Fim");
[Link]("--------------");
[Link]("");
[Link]("Escolha sua opção");

Scanner teclado = new Scanner(System. in );

String menu = [Link]();

char x_menu[];
String Texto;

x_menu = [Link](); // Transformando String em char


switch (x_menu[0]) {
case '1':
Texto = "Incluir";
break;
case '2':
Texto = "Alterar";
break;
case '3':
Texto = "Excluir";
break;
case '4':
Texto = "Relatório";
break;
case '5':
Texto = "Sair";
break;
default:
Texto = "Opção inválida ";
break;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Menu Principal
---------------
1 - Inclusão
2- Alteração
3 - Exclusão
4 - Relatório
5 - Fim
--------------

Escolha sua opção


2
Alterar

C:\ExemploJava>

Exercício 5. Crie uma calculadora com as 4 operações da matemática: adição, subtração, divisão e
multiplicação.

Arquivo [Link]

/* Não é possível usar


switch com String.A expressão no
switch (expressao) deve ser compatível com int(int, byte, short ou char).Valores em ponto flutuante

(float ou double) não são [Link] boolean ou qualquer tipo referência(String, por exemplo).
Outra coisa, Java nãoéJavaScript.Não confunda alhos com bugalhos. */
// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

Scanner teclado = new Scanner(System. in );

[Link]("Digite o primeiro número: ");


String a = [Link]();

[Link]("Digite o segundo número: ");


String b = [Link]();
[Link]("Escolha um operador + , -, * , /");
String operador = [Link]();

char x_operador[];
String Texto;

float A = [Link](a);
float B = [Link](b);

x_operador = [Link](); // Transformando String em char


switch (x_operador[0]) {
case '+':
Texto = "Resultado soma da igual a " + (A + B);
break;
case '-':
Texto = "Resultado da subtração igual a " + (A - B);
break;
case '*':
Texto = "Resultado da multiplicação igual a " + (A * B);
break;
case '/':
Texto = "Resultado da divisão igual a " + (A / B);
break;
default:
Texto = "Caractere diferente de + , -, * , /";
break;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite o primeiro número:
32
Digite o segundo número:
8
Escolha um operador + , -, * , /
*
Resultado da multiplicação igual a 256.0

C:\ExemploJava>

Exercício 6. Crie um programa que digite um caractere e diga se ele é vogal maiúscula, valor numérico,
operador aritmético ou outro caractere.

Arquivo [Link]
/*
Não é possível usar switch com String. A expressão no switch(expressao) deve ser compatível com int

(int, byte, short ou char). Valores em ponto flutuante (float ou double) não são permitidos. Nem

boolean ou qualquer tipo referência (String, por exemplo).


Outra coisa, Java não é JavaScript. Não confunda alhos com bugalhos.
*/
// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

Scanner teclado = new Scanner(System. in );

[Link]("Escolha um caractere:");
String caractere = [Link]();

String Texto;
char c[];

c = [Link](); // Transformando String em char


Texto = "";

switch (c[0]) {
case 'A':
case 'E':
case 'I':
case 'O':
case 'U':
Texto = "Vogal maiúscula";
break;
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
Texto = "Valor numérico";
break;
case '+':
case '-':
case '*':
case '/':
Texto = "Operador Aritmético";
break;
default:
Texto = "Você digitou outro caractere";
break;
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Escolha um caractere:
E
Vogal maiúscula

C:\ExemploJava>

Operador Ternário
Diferente da instrução IF, o operador ternário tem este nome porque necessita de três operandos para se
avaliado. Ooperador ternário tem a seguinte forma:

condição1 ? expressão_verdadeira : espressão_falsa

Para avaliar o resultado da expressão primeiro a condição1 é avaliada. Caso este resultado seja verdadeiro
então resultado da expressão será igual ao valor da expressão_verdadeira, no caso contrário
expressão_falsa é avaliada e se torna o resultado.

Exemplo 1:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int variavel;
String resultado;

variavel = 50;
resultado = (variavel >= 0) && (variavel <= 100) ? "VERDADEIRO" : "FALSO";

[Link](resultado);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
VERDADEIRO
C:\ExemploJava>

Exemplo 2:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int horas;
int minutos;
int segundos;

horas = 30;
minutos = 45;
segundos = 30;
horas = (horas >= 0) && (horas <= 24) ? horas : 0;
minutos = (minutos >= 0) && (minutos <= 60) ? minutos : 0;
segundos = (segundos >= 0) && (segundos <= 60) ? segundos : 0;
[Link]("São " + horas + ":" + minutos + ":" + segundos);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
São [Link]

C:\ExemploJava>

Exemplo 3:

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

Scanner teclado = new Scanner(System. in );

[Link]("Digite a primeira nota");


String Nota1 = [Link]();

[Link]("Digite a segunda nota");


String Nota2 = [Link]();

[Link]("Digite a terceira nota");


String Nota3 = [Link]();

float nota1 = [Link](Nota1);


float nota2 = [Link](Nota2);
float nota3 = [Link](Nota3);

float media;
String resultado;

media = (nota1 + nota2 + nota3) / 3;


resultado = (media >= 6) && (media <= 10) ? "Aprovado" : "Reprovado";
[Link](resultado);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite a primeira nota
3.4
Digite a segunda nota
3.5
Digite a terceira nota
8.0
Reprovado

C:\ExemploJava>

Comando For
O comando FOR é uma estrutura de repetição que repete uma série de instruções um número especificado
de vezes. Digamos que deseje imprimir seu nome na tela dez vezes, por exemplo:

Arquivo: [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

Scanner teclado = new Scanner(System. in );

[Link]("Digite um nome: ");


String nome = [Link]();

[Link]("");
[Link](nome);
[Link](nome);
[Link](nome);
[Link](nome);
[Link](nome);
[Link](nome);
[Link](nome);
[Link](nome);
[Link](nome);
[Link](nome);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite um nome:
Bart Simpson

Bart
Bart
Bart
Bart
Bart
Bart
Bart
Bart
Bart
Bart

C:\ExemploJava>

Quando você rodar o programa, digite um nome na caixa de texto e clique no botão Ok ou dê Enter.
Quando o fizer, o programa imprimirá o nome dez vezes na janela do formulário, como mostrado a
seguir:

Bart Simpson

Bart Simpson

Bart Simpson

Bart Simpson

Bart Simpson

Bart Simpson

Bart Simpson

Bart Simpson

Bart Simpson
Bart Simpson

Ter muitas linhas em seu programa contendo instruções idênticas alonga-o além do necessário e
desperdiça memória. Também mostra um estilo de programação ruim. Ao menos que você deseje que
seus amigos programadores riam de você pelas costas, aprenda a substituir códigos de programa
redundante por loops de programa.

A rotina do programa anterior pode ser extremamente fácil usando-se um loop For, e aqui está como:

Arquivo [Link]

// [Link]
import [Link];

public class ExemploJava {


public static void main(String[] args) {

Scanner teclado = new Scanner(System. in );

[Link]("Digite um nome: ");


String nome = [Link]();

[Link]("");
String Texto = "";

for (int i = 1; i <= 10; i++) {


Texto += nome + "\n";
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Digite um nome:
Bart Simpson

Bart
Bart
Bart
Bart
Bart
Bart
Bart
Bart
Bart
Bart

C:\ExemploJava>

Substitua a rotina do programa anterior por esta. Quando você roda o programa, a saída será idêntica
àquela do primeiro programa, mas agora o programa é menor e sem código redundante.

Exercício 1. Crie uma estrutura de repetição que conte de 1 até 10.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;

Texto = "";
for (int x = 1; x <= 10; x++) {
Texto += x + ", ";
}

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

C:\ExemploJava>

Resultado: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

Exercício 2. Crie uma estrutura de repetição que imprima os números pares.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;

Texto = "";
for (int x = 0; x <= 20; x = x + 2) {
Texto += x + ", ";
}

[Link](Texto);

}
}
Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20,

C:\ExemploJava>

Resultado: 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20,

Exercício 3. Crie uma estrutura de repetição que imprima os números ímpares.

Arquivo [Link]

<html>
<head>
<title>Teste</title>
</head>
<body>
<applet code="[Link]" name="mens" width="0" height="0">
</applet>
<script language="javascript">
app = [Link];
[Link]([Link]());
</script>
</body>
</html>

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;

Texto = "";

for (int x = 1; x <= 21; x = x + 2) {


Texto += x + ", ";
}

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]
C:\ExemploJava>java ExemploJava
1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21,

C:\ExemploJava>

Resultado: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21,

Exercício 4. Crie uma estrutura de repetição que imprima os números múltiplos de 5.

Arquivo [Link]

<html>
<head>
<title>Teste</title>
</head>
<body>
<applet code="[Link]" name="mens" width="0" height="0">
</applet>
<script language="javascript">
app = [Link];
[Link]([Link]());
</script>
</body>
</html>

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;

Texto = "";
for (int x = 0; x <= 50; x = x + 5) {
Texto += x + ", ";
}

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50,

C:\ExemploJava>
Resultado: 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50,

Exercício 5. Crie uma estrutura de repetição que conte de 110 até 120.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;

Texto = "";
for (int x = 110; x <= 120; x++) {
Texto += x + ", ";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,

C:\ExemploJava>

Resultado: 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,

Exercício 6. Crie uma estrutura de repetição que conte de 40 até 80 e ao mesmo tempo imprima números
múltiplos de 8.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto;

Texto = "";
for (int x = 40; x <= 80; x += 8) {
Texto += x + ", ";
}
[Link](Texto);
}
}

Resultado:
C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
40, 48, 56, 64, 72, 80,

C:\ExemploJava>

Resultado: 40, 48, 56, 64, 72, 80,

Exercício 7. Crie uma estrutura de repetição que conte de 20 até 1 invertidamente.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto;

Texto = "";
for (int x = 20; x >= 1; x--) {
Texto += x + ", ";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,

C:\ExemploJava>

Resultado: 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,

Exercício 8. Crie uma estrutura de repetição que conte de -10 até + 10 (números negativos e números
positivos)

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto;

Texto = "";
for (int x = -10; x <= 10; x++) {
Texto += x + ", ";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
10,

C:\ExemploJava>

Resultado: -10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

Exercício 9. Crie uma estrutura de repetição que conte de -25 até -15.

Arquivo [Link]

<html>
<head>
<title>Teste</title>
</head>
<body>
<applet code="[Link]" name="mens" width="0" height="0">
</applet>
<script language="javascript">
app = [Link];
[Link]([Link]());
</script>
</body>
</html>

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto;

Texto = "";
for (int x = -25; x <= -15; x++) {
Texto += x + ", ";
}
[Link](Texto);
}
}
Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
-25, -24, -23, -22, -21, -20, -19, -18, -17, -16, -15,

C:\ExemploJava>

Resultado: -25, -24, -23, -22, -21, -20, -19, -18, -17, -16, -15,

Exercício 10. Crie um conjunto dos números múltiplos de 3 usando a estrutura de repetição FOR.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto;

Texto = "";
for (int x = 0; x <= 30; x += 3) {
Texto += x + ", ";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30,

C:\ExemploJava>

Resultado: 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30,

Exercício 11. Crie uma estrutura de repetição de 1 até 10, informando o quadrado deste número.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto;
int Quadrado;

Texto = "";
for (int N = 1; N <= 10; N++) {
Quadrado = N * N;
Texto += "O quadrado de " + N + " é " + Quadrado + "\n";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
O quadrado de 1 é 1
O quadrado de 2 é 4
O quadrado de 3 é 9
O quadrado de 4 é 16
O quadrado de 5 é 25
O quadrado de 6 é 36
O quadrado de 7 é 49
O quadrado de 8 é 64
O quadrado de 9 é 81
O quadrado de 10 é 100

C:\ExemploJava>

Exercício 12. Crie uma estrutura de repetição que imprima "Olá" dez vezes.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto;
Texto = "";
for (int x = 1; x <= 10; x++) {
Texto += "Olá\n";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Olá
Olá
Olá
Olá
Olá
Olá
Olá
Olá
Olá
Olá
C:\ExemploJava>

Comando while
O comando while é utilizado quando se deseja repetir um comando, ou um grupo de comandos, enquanto
uma dada condição for verdadeira. Um exemplo muito simples é o de escrever os números inteiros entre 1
e 10 na tela. Para isto podemos construir um programa muito simples para esta tarefa

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int i;
String Texto;

i = 1;
Texto = "";
while (i <= 10) {
Texto += i + ", ";
i = i + 1;
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

C:\ExemploJava>

Segundo o programa acima podemos ver que o programa termina quando o teste i <= 10 der como
resultado false.

Para que isto ocorra, necessariamente devemos ter i>10. A cada passo o programa primeiro testa a
condição e após imprime e incrementa a variável. Assim o programa deve gerar seqüencialmente os
valores 1, 2, 3... 10. Após o valor 10 faz i=11 e volta a testar a condição. Neste caso (11 <= 10) é false e o
programa termina.

Exercício 1. Crie uma estrutura de repetição que conte de 1 até 10.

Arquivo [Link]
// [Link]
public class ExemploJava {
public static void main(String[] args) {

int x;
String Texto;

x = 1;
Texto = "";

while (x <= 10) {


Texto += x + ", ";
x = x + 1;
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

C:\ExemploJava>

Resultado: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

Exercício 2. Crie uma estrutura de repetição que imprima os números pares

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int x;
String Texto;

x = 0;
Texto = "";

while (x <= 20) {


Texto += x + ", ";
x = x + 2;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20,

C:\ExemploJava>

Resultado: 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20,

Exercício 3. Crie uma estrutura de repetição que imprima os números ímpares.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int x;
String Texto;

x = 0;
Texto = "";

x = 1;
Texto = "";
while (x < 21) {
Texto += x + ", ";
x = x + 2;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1, 3, 5, 7, 9, 11, 13, 15, 17, 19,

C:\ExemploJava>

Resultado: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19,

Exercício 4. Crie uma estrutura de repetição que imprima os números múltiplos de 5.


Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int x;
String Texto;

x = 0;
Texto = "";

while (x <= 50) {


Texto += x + ", ";
x = x + 5;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50,

C:\ExemploJava>

Resultado: 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50,

Exercício 5. Crie uma estrutura de repetição que conte de 110 até 120.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int x;
String Texto;

x = 110;
Texto = "";

while (x <= 120) {


Texto += x + ", ";
x = x + 1;
}

[Link](Texto);
}
}
Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,

C:\ExemploJava>

Resultado: 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,

Exercício 6. Crie uma estrutura de repetição que conte de 40 até 80 e ao mesmo tempo imprima números
múltiplos de 8.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int x;
String Texto;

x = 40;
Texto = "";

while (x <= 80) {


Texto += x + ", ";
x = x + 8;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
40, 48, 56, 64, 72, 80,

C:\ExemploJava>

Resultado: 40, 48, 56, 64, 72, 80,

Exercício 7. Crie uma estrutura de repetição que conte de 20 até 1 invertidamente.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int x;
String Texto;

x = 20;
Texto = "";

while (x >= 1) {
Texto += x + ", ";
x = x - 1;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,

C:\ExemploJava>

Resultado: 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,

Exercício 8. Crie uma estrutura de repetição que conte de -10 até + 10 (números negativos e números
positivos)

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int x;
String Texto;

x = -10;
Texto = "";

while (x <= 10) {


Texto += x + ", ";
x = x + 1;
}

[Link](Texto);
}
}

Resultado:
:\ExemploJava>javac [Link]

:\ExemploJava>java ExemploJava
0, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,

:\ExemploJava>

Resultado: -10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

Exercício 9. Crie uma estrutura de repetição que conte de -25 até -15.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int x;
String Texto;

x = -25;
Texto = "";
while (x <= -15) {
Texto += x + ", ";
x = x + 1;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
-25, -24, -23, -22, -21, -20, -19, -18, -17, -16, -15,

C:\ExemploJava>

Resultado: -25, -24, -23, -22, -21, -20, -19, -18, -17, -16, -15,

Exercício 10. Crie um conjunto dos números múltiplos de 3 usando a estrutura de repetição while.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
int x;
String Texto;
x = 0;
Texto = "";

while (x <= 30) {


Texto += x + ", ";
x = x + 3;
}

[Link](Texto);
}
}

Resulado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30,

C:\ExemploJava>

Resultado: 0, 3, 6, 12, 15, 18, 21, 24, 27, 30,

Exercício 11. Antes de executar um programa, crie uma mensagem informando se deseja prosseguir.

<script language="javascript">
tentativas=1
while(tentativas <= 3){
resposta=prompt("Você deseja prosseguir (s ou n)?","")
if (resposta=="s"){
[Link]("<br>Execute o programa.")
break;
}
else if(resposta=="n") {
[Link]("<br>Fim do programa.")
break;
} else {
[Link]("<br>Opção inválida:")
[Link]("<br>Tente novamente.")
tentativas=tentativas + 1
}
}
if (tentativas >= 4) {
[Link]("<br>vou assumir como um não")
}
</script>
Loops invertidos
Assim como a instrução For e a instrução while, vistos anteriormente, o loop invertido, ao contrário do
comando while, é um bloco de comando que será executado pelo menos uma vez e será repetido até que a
condição associada seja verdadeira.

Há situações em que é importante se garantir a execução de uma seqüência de comandos pelo menos uma
vez. Veja um exemplo simples:

<script language="javascript">
mes=prompt("Digite o mês:")
mes=parseFloat(mes)
while(mes<1 || mes>12) {
[Link]("<br>Digitação errada! Digite de novo.")
mes=prompt("Digite o mês:")
mes=parseFloat(mes)
}
</script>

Observe que, repetimos duas vezes o mesmo comando: "Digite o mês".

Podemos simplificar este comando somente uma vez, usando a estrutura de repetição do while .

do while é o loop invertido de while.

Usando o exemplo anterior iremos substituir o comando while pelo comando do , observe:

<script language="javascript">
do {
mes=prompt("Digite o mês:")
mes=parseFloat(mes)
if(mes<1 || mes>12){
[Link]("<br>Digitação errada! Digite de novo")
}
} while (mes<1 || mes>12)
</script>

Pode-se também utilizar este comando para execuções sucessivas de um programa. Neste caso, é comum
se fazer uma pergunta do tipo "Deseja continuar (s/n)?" após cada execução.

Naturalmente, é necessário uma variável do tipo caractere que receba a resposta do usuário e que será
utilizada para controlar a estrutura de repetição. Teríamos algo como:

<script language="javascript">
// ...
do {
/ * Seqüência de comandos do programa propriamente dito * /
Resp=prompt("Deseja continuar (s/n)?","")

} while([Link]()!="N")
</script>

Vale lembrar que a função toUpperCase() retorna o argumento no formato maiúsculo.

Observe mais um exemplo:


<script language="javascript">
do {
num=prompt("Digite um número:","")
num=parseFloat(num)
if (num<100) {
[Link]("<br>O número " + num + " é menor do que 100")
}
fim=prompt("Deseja testar outro [S/N] ?","")
} while ([Link]()!="N")
</script>

Loops Infinitos
Veja o exemplo abaixo:

Atenção, não teste este código!

String Texto ="";

int Contador=0;int n=0;


while(Contador<=10){
Texto += n + ", ";
n=n + 1;
}

return Texto;

Não teste este código


Se você entendeu os exemplos anteriores sobre os loops, deve perceber que existe um erro nesse exemplo.
Como pode ver a condição do loop while refere-se à variável contador, mas essa variável realmente não
se altera durante o loop. Isso crua um loop infinito. O loop continuará executando até que seja
interrompido pelo usuário ou até gerar algum tipo de erro.

Os loops infinitos nem sempre podem ser interrompidos pelo usuário, exceto fechando onavegador, em
alguns casos os loops infinitos podem até impedir que onavegadorfeche ou provocar uma pane no
sistema.

Eles também podem ser difíceis de serem identificados, porque este tipo de código não lhe mostrará um
erro dizendo que há um loop infinito. Mas não se preocupe, pois esse tipo de loop pode ser evitado, o que
tem que fazer é: toda vez que for criar um loop em um script, você deve ter cuidado de certificar-se de
que há uma saída.

Nota: Dependendo da versão do navegador em utilização, o loop infinito pode até mesmo fazer o
navegador para de responder ao usuário. Certifique-se de fornecer uma rota de escape de loops infinitos e
salvar seu script até testá-lo, em qualquer eventualidade.

Ocasionalmente, você pode querer criar um loop infinito. Isso talvez inclua situações em que você quer
que seu programa execute até o usuário interrompê-lo ou em que fornece uma rota de escape com a
instruçãobreak. Uma maneira de criar um loop infinito é o seguinte:

while(true) { ...}
Como o valor true é condicional, esse loop sempre encontrará sua condição como sendo verdadeira.

Escapando de um loop infinito utilizando a


instruçãobreak
Há uma maneira de escapar de um loop infinito. Você pode utilizar a instruçãobreak(que significa parar)
durante um loop para sair dele imediatamente e continuar a primeira instrução depois do loop. O exemplo
abaixo mostra o uso dessa instrução.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int n;
int total;
String Texto;

n = 0;
total = 0;
Texto = "";
while (true) {
n = n + 1;
total = total + n;
Texto += total + ", ";
if (total >= 100) {
break;
}
[Link](Texto);
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1,
1, 3,
1, 3, 6,
1, 3, 6, 10,
1, 3, 6, 10, 15,
1, 3, 6, 10, 15, 21,
1, 3, 6, 10, 15, 21, 28,
1, 3, 6, 10, 15, 21, 28, 36,
1, 3, 6, 10, 15, 21, 28, 36, 45,
1, 3, 6, 10, 15, 21, 28, 36, 45, 55,
1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66,
1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78,
1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91,

C:\ExemploJava>

Embora a instrução while esteja configurada como um loop infinito, a instrução if verifica o valor
correspondente. Se total maior que 100, sai do loop.

Quando este tipo de código encontra uma instruçãobreak, ele pula o resto do loop e continua o script com
a primeira instrução depois da chave de fechamento no final do loop. Você pode utiliza a
instruçãobreakem qualquer tipo de loop, seja infinita ou não.

Comando de controle do Loop

Break
O comandoBreakinterrompe o comando while ou For que está sendo executado e transfere o controle do
programa para o comando seguinte aquele que encerra o loop.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int i;
String Texto;

i = 0;
Texto = "";

while (i < 20) {


i = i + 1;
if (i == 10) {
break;
}
Texto += i + ", ";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1, 2, 3, 4, 5, 6, 7, 8, 9,

C:\ExemploJava>
Resultado: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,

Continue
A declaração continue é usada quando não se quer executar nenhum dos comandos daquele ponto até o
fim do bloco, mas queremos que o laço prossiga com a próxima interação. No caso do exemplo anterior,
se i for 10, o laço se interrompe e o restante da matriz não será preenchido. Em lugar disto, podemos
usarcontinueque não só salta o processo de atualização, mas salta além do calcula que iria provocar um
erro. O seguinte código permite que o laço continue, mas salta todos os números ímpares.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int k;
String Texto;

k = 0;
Texto = "";

while (k <= 20) {


k++;
if ((k % 2) != 0) {
continue;
}
Texto += k + ", ";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
2, 4, 6, 8, 10, 12, 14, 16, 18, 20,

C:\ExemploJava>

Resultado: 2, 4, 6, 8, 10, 12, 14, 16, 18, 20,

Operadores incrementais
Existem dois tipos de operadores incrementais o incremento (x++ ) e o decremento (x--)

O incremento (x++ ) aumenta o valor da variável em uma unidade, o decremento (x--) diminui o valor
da variável em uma unidade, ou seja:

x++ é idêntico a x=x + 1

x-- é idêntico a x=x-1

Os operadores de incremento e decremento podem ser prefixos ou pós-fixos - isto é, podem ser colocados
antes ( ++x) ou depois (x++); da mesma forma é o decremento (--x) igual a (x--), ou seja:

x++ é semelhante a ++x e

x-- é semelhante a --x.

Conclui-se da seguinte forma:

x++ ou ++x é idêntico a x=x + 1

x-- ou --x é idêntico a x=x-1

Veja o exemplo abaixo:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;
int a;

Texto = "";
a = 2;
Texto += "Se a=2\n";
a++;
Texto += "O resultado de a++ é " + a;
a = 2;
Texto += "\nSe a=2\n";
++a;
Texto += "O resultado de ++a é " + a;

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Se a=2
O resultado de a++ é 3
Se a=2
O resultado de ++a é 3
C:\ExemploJava>

O resultado da execução deste pequeno script é o seguinte:

Se a=2

O resultado de a++ é 3

Se a=2

O resultado de ++a é 3

Da mesma forma são os operadores decrementais a-- e --a, é só substituir + + por --; porém o resultado é
1.

Os operadores incrementais são muito usados em estruturas de repetições, tais como o For e o while.
Exemplo:

Exemplo 1:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;
int x;

x = 1;
Texto = "";
while (x <= 10) {
Texto += x + ", ";
x++;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

C:\ExemploJava>

Resultado: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

Exemplo 2:
Arquivo [Link]

<html>
<head>
<title>Teste</title>
</head>
<body>
<applet code="[Link]" name="mens" width="0" height="0">
</applet>
<script language="javascript">
app = [Link];
[Link]([Link]());
</script>
</body>
</html>

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto;
int x;

x = 20;
Texto = "";
while (x >= 1) {
Texto += x + ", ";
--x;
}

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,

C:\ExemploJava>

Resultado: 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,

Atenção programadores!!!

Em linguagens de programação tais como Java e o Javascript devemos ter cuidado na hora de usar
operadores incrementais.
Quando colocamos uma variável e um outro operador de atribuição "=" na frente dos operadores
incrementais + + e -- há uma sutil diferença:

A=x++

é diferente de

A= ++x

Imagine que variável x seja igual a 5. Nos dois casos o resultado de A deveria ser 6 nas duas operações.

Se:

Se: Se

A=5 A=5

e: e:

A=x++ A=++x

O resultado é: O resultado é:

A=5 A=6

e: e:

x=6 x=6

Esta sutileza sintática pode gerar pequenos erros de programação.

Da mesma forma é o operador decremental "--".

Se: Se

A=5 A=5

e: e:

A=x-- A=--x

O resultado é: O resultado é:

A=5 A=4

e: e:

x=4 x=4

Veja o exemplo na prática:


Incremento:
a=2 a=2
a=a++ a=++a
Resultado de: a=2 Resultado de: a=3

Decremento:
a=2 a=2
a=a-- a=--a
Resultado de: a=2 Resultado de: a=1

O resultado da execução deste pequeno script é o seguinte:

a=2

a++=2

++a=3

Operadores de atribuição
Operadores de atribuição (semelhante aos operadores aritméticos) são símbolos usados pelo computador
+ , -, * , /, para efetuar cálculos matemáticos.

Veja tabela abaixo:

Nome Operador Utilização Equivalente a

Adição += a+=b a=a + b

Subtração -= a-=b a=a-b

Multiplicação *= a * =b a=a * b

Divisão /= a/=b a=a/b

Módulo %= a%=b a=a%b

Concatenação += a+=b a=a+b

Veja os exemplos:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto = "";

// Exemplo 1:
int a = 2;
int b = 3;

a += b; // Resultado a=5, idêntico a a=a + b

Texto += a + "\n";

// Exemplo 2:
int x = 7;
int y = 4;

x -= y; // Resultado x=3, idêntico a x=x-y

Texto += x + "\n";

// Exemplo 3:

int V1 = 8;

V1 *= 2; // Resultado V1=16, idêntico a V1=V1 * 2

Texto += V1 + "\n";

// Exemplo 4:

float z = 12;

z /= 3; // Resultado z=4, idêntico a z=z/3

Texto += z + "\n";

// Exemplo 5:
float h = 9;
int i = 2;

h %= i; // Resultado h=1, idêntico a h=h%i


// Observação: O operador Módulo retorna o resto da divisão

Texto += h + "\n";

// Exemplo 6:
String Variavel = "texto 1 ";

Variavel += "texto 2"; // Resultado variavel="texto 1 texto 2" idêntico a variavel = variavel + "texto
2";

Texto += Variavel + "\n";

[Link](Texto);
}
}
Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
5
3
16
4.0
1.0
texto 1 texto 2

C:\ExemploJava>

Array
Array é um conjunto de dados semelhantes (Como números, letras ou strings) armazenados com o mesmo
nome. Aos dados é atribuído um número diferente no array.

Quando o array tem somente uma dimensão, é chamado de vetor.

A maioria das linguagens de programação pode armazenar e manipular matrizes de uma ou mais
dimensões. As matrizes multidimensionais são muito usados em simulação científica e no processamento
matemático; entretanto uma matriz pode ser apenas uma tabela de preços mantidas na memória para
acesso instantâneo por um programa de entrada de pedido.

Tipos de Arrays
Os arrays se dividem em dois grupos: vetores e matrizes.

Vetores são arrays com uma dimensão.

Matrizes são arrays com mais de uma dimensão.

Exemplos de vetores
1 - Na horizontal

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String sexo[]= {"masculino", "feminino"};

int numero[]={1, 2, 3, 4, 5, 6, 7, 8, 9};


char vogais[]={'A', 'E', 'I', 'O', 'U'};

String Frutas[]={"Banana", "Laranja", "Maçã", "Mamão"};

String Cursos[]={"Português", "Matemática", "Física", "Química", "Biologia", "Inglês",


"Geografia", "História"};

String estadocivil[]={"solteiro", "casado", "divorciado", "viúvo"};

[Link](estadocivil[0]);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
solteiro

C:\ExemploJava>

2 - Na vertical

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String sexo[];
sexo = new String[2];
sexo[0] = "masculino";
sexo[1] = "feminino";

int numero[];
numero = new int[10];
numero[0] = 0;
numero[1] = 1;
numero[2] = 2;
numero[3] = 3;
numero[4] = 4;
numero[5] = 5;
numero[6] = 6;
numero[7] = 7;
numero[8] = 8;
numero[9] = 9;

char vogais[];
vogais = new char[5];
vogais[0] = 'A';
vogais[1] = 'E';
vogais[2] = 'I';
vogais[3] = 'O';
vogais[4] = 'U';

String Fruta[];
Fruta = new String[4];
Fruta[0] = "Banana";
Fruta[1] = "Laranja";
Fruta[2] = "Maçâ";
Fruta[3] = "Mamão";

String Cursos[];
Cursos = new String[8];
Cursos[0] = "Português";
Cursos[1] = "Matemática";
Cursos[2] = "Física";
Cursos[3] = "Química";
Cursos[4] = "Biologia";
Cursos[5] = "Inglês";
Cursos[6] = "Geografia";
Cursos[7] = "História";

String estadocivil[];
estadocivil = new String[4];
estadocivil[0] = "solteiro";
estadocivil[1] = "casado";
estadocivil[2] = "divorciado";
estadocivil[3] = "viúvo";

[Link](estadocivil[0]);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
solteiro

C:\ExemploJava>

Usando vetores
Exercício 1. Elabore um vetor vertical que contenha os dias da semana.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String lista[];
lista = new String[7];
lista[0] = "Segunda";
lista[1] = "Terça";
lista[2] = "Quarta";
lista[3] = "Quinta";
lista[4] = "Sexta";
lista[5] = "Sábado";
lista[6] = "Domingo";

String Texto;
Texto = "";
Texto += "Dias da semana: ";

for (int x = 0; x <= 6; x++) {


Texto += lista[x] + ", ";
}

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Dias da semana: Segunda, Terça, Quarta, Quinta, Sexta, Sábado,
Domingo,

C:\ExemploJava>

Exercício 2. Elabore um vetor horizontal que contenha os meses do ano.

Arquivo [Link]

<html>
<head>
<title>Teste</title>
</head>
<body>
<applet code="[Link]" name="mens" width="0" height="0">
</applet>
<script language="javascript">
app = [Link];
[Link]([Link]());
</script>
</body>
</html>

Arquivo [Link]
// [Link]
public class ExemploJava {
public static void main(String[] args) {

String mes[] = {"Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto",
"Setembro", "Outubro", "Novembro", "Dezembro"};

String Texto;

Texto = "";
Texto += "Mes do ano: ";

for (int x = 0; x <= 11; x++) {


Texto += mes[x] + ", ";
}

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Mes do ano: Janeiro, Fevereiro, Março, Abril, Maio, Junho, Julho,
Agosto, Setembro, Outubro, Novembro, Dezembro,

C:\ExemploJava>

Exercício 3. A partir da tabela abaixo, foram criados dois vetores de 6 posições: NOME e IDADE.

Nome Idade

1 Beatriz 19

2 Pedro 32

3 Cláudio 23

4 Susana 27

5 Marcos 16

6 Celina 35

Com base nesta informação, diga o que será impresso pelas instruções abaixo:

Exemplo:
Texto = "";
for (int i = 0; i <= 5; i++) {
if (idade[i] < 20) {
Texto += Nome[i] + " ";
}
}

Solução:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Nome[];
int idade[];
Nome = new String[6];
idade = new int[6];

Nome[0] = "Beatriz";
idade[0] = 19;
Nome[1] = "Pedro";
idade[1] = 32;
Nome[2] = "Cláudio";
idade[2] = 23;
Nome[3] = "Susana";
idade[3] = 27;
Nome[4] = "Marcos";
idade[4] = 16;
Nome[5] = "Celina";
idade[5] = 35;

String Texto;
Texto = "";
for (int i = 0; i <= 5; i++) {
if (idade[i] < 20) {
Texto += Nome[i] + " ";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Beatriz Marcos
C:\ExemploJava>

Exercício 4. A tabela abaixo contém o nome de algumas ruas e o bairro onde se localizam.

Rua Bairro

Mena Barreto Botafogo

Constança Barbosa Méier

Marechal Câmara Centro

Álvaro Ramos Botafogo

Cesário Alvim Humaitá

José Clemente Niterói

As instruções a seguir iniciam um programa que cria os vetores RUAS e BAIRROS. Escreva um
programa de forma que ele imprima o nome das ruas do bairro de Botafogo.

Solução

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String ruas[] = {"Mena Barreto", "Constança Barbosa", "Marechal Câmara", "Álvaro Ramos",
"Cesário Alvim", "José Clemente"};

String bairros[] = {"Botafogo", "Méier", "Centro", "Botafogo", "Humaitá", "Niterói"};

String Texto;

Texto = "";
Texto += "Número total de bairros: " + [Link] + "\n\n";

for (int i = 0; i <= [Link] - 1; i++) {


Texto += "Rua: " + ruas[i] + ", bairro: " + bairros[i] + "\n";
}

Texto += "\nRuas do bairro de Botafogo:\n";

for (int i = 0; i <= [Link] - 1; i++) {

if ("Botafogo".equals(bairros[i])) {
Texto += "Nome da rua: " + ruas[i];
Texto += " Nome do bairro: " + bairros[i] + "\n";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Número total de bairros: 6

Rua: Mena Barreto, bairro: Botafogo


Rua: Constança Barbosa, bairro: Méier
Rua: Marechal Câmara, bairro: Centro
Rua: Álvaro Ramos, bairro: Botafogo
Rua: Cesário Alvim, bairro: Humaitá
Rua: José Clemente, bairro: Niterói

Ruas do bairro de Botafogo:


Nome da rua: Mena Barreto Nome do bairro: Botafogo
Nome da rua: Álvaro Ramos Nome do bairro: Botafogo

C:\ExemploJava>

Exercício 5. Faça um programa para imprimir o signo do zodíaco correspondente a uma data qualquer
(dia / mês).

A tabela a seguir mostra o último dia de cada mês e o signo correspondente:

Mes Último dia Signo

01 20 Capricórnio

02 19 Aquário

03 20 Peixes

04 20 Áries

05 20 Touro

06 20 Gêmeos

07 21 Câncer

08 22 Leão

09 22 Virgem

10 22 Libra

11 21 Escorpião
12 21 Sagitário

Importante: Armazene o horóscopo em uma array.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

int mes[];
int dia[];
String signo[];

mes = new int[12];


dia = new int[12];
signo = new String[12];

mes[0] = 1;
dia[0] = 20;
signo[0] = "Capricórnio";
mes[1] = 2;
dia[1] = 19;
signo[1] = "Aquário";
mes[2] = 3;
dia[2] = 20;
signo[2] = "Peixes";
mes[3] = 4;
dia[3] = 20;
signo[3] = "Áries";
mes[4] = 5;
dia[4] = 20;
signo[4] = "Touro";
mes[5] = 6;
dia[5] = 20;
signo[5] = "Gêmeos";
mes[6] = 7;
dia[6] = 21;
signo[6] = "Câncer";
mes[7] = 8;
dia[7] = 22;
signo[7] = "Leão";
mes[8] = 9;
dia[8] = 22;
signo[8] = "Virgem";
mes[9] = 10;
dia[9] = 22;
signo[9] = "Libra";
mes[10] = 11;
dia[10] = 21;
signo[10] = "Escorpião";
mes[11] = 12;
dia[11] = 21;
signo[11] = "Sagitário";

String Texto;
Texto = "";
Texto += "Tabela de signos:\n\n";

for (int x = 1; x <= 11; x++) {


Texto += signo[x] + " ultimo dia " + dia[x] + " / " + mes[x] + "\n";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Tabela de signos:

Aquário ultimo dia 19 / 2


Peixes ultimo dia 20 / 3
Áries ultimo dia 20 / 4
Touro ultimo dia 20 / 5
Gêmeos ultimo dia 20 / 6
Câncer ultimo dia 21 / 7
Leão ultimo dia 22 / 8
Virgem ultimo dia 22 / 9
Libra ultimo dia 22 / 10
Escorpião ultimo dia 21 / 11
Sagitário ultimo dia 21 / 12

C:\ExemploJava>

Exercício 6. Faça um programa que imprima na tela a seguinte tabela abaixo:

Índice Planeta Luas Anos Distância


1 Mercúrio 0 0.024 58
2 Vênus 0 0.625 108
3 Terra 1 1 150
4 Marte 2 1.91 228
5 Júpiter 16 12 778
6 Saturno 18 29.9 1427
7 Urano 15 85.24 2869
8 Netuno 8 167.19 4498
9 Plutão 1 251.29 5900
Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String planeta[];
int luas[];
double anos[];
float distancia[];

planeta = new String[4];


luas = new int[4];
anos = new double[4];
distancia = new float[4];

planeta[0] = "Mercúrio";
luas[0] = 0;
anos[0] = 0.24;
distancia[0] = 58;
planeta[1] = "Vênus";
luas[1] = 0;
anos[1] = 0.625;
distancia[1] = 108;
planeta[2] = "Terra";
luas[2] = 1;
anos[2] = 1;
distancia[2] = 150;
planeta[3] = "Marte";
luas[3] = 2;
anos[3] = 1.91;
distancia[3] = 228;

String Texto;
Texto = "";
Texto += "Planeta luas anos distância\n\n";

for (int indice = 0; indice <= 3; indice++) {


Texto += planeta[indice] + " " + luas[indice] + " " + anos[indice] + " " + distancia[indice] + "\n";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Planeta luas anos distância

Mercúrio 0 0.24 58.0


Vênus 0 0.625 108.0
Terra 1 1.0 150.0
Marte 2 1.91 228.0

C:\ExemploJava>

Matrizes
Tente pensar no problema como uma tabela
Notas Nota 1 Nota 2 Nota 3

Aluno01

Aluno02

Aluno03

Aluno04

Aluno05

Veja que esta tabela tem dois tipos de informação: Alunos e notas.

Por exemplo a 2ª nota do aluno 3, encontra-se no cruzamento entre a terceira linha com a segunda coluna,
ou melhor, encontra-se no cruzamento entre a linha de índice 2 com a coluna de índice 1 , isto partindo
do pressuposto que o índice da primeira linha é 0 e o índice da primeira coluna é também 0 .

Podemos transformar qualquer tabela em matriz.

A array multidimensional mostrado acima pode ser alocado de forma dinâmica. Veja a tabela abaixo:

Coluna 1 Coluna 2 Coluna 3

Linha 1
a[0][0] a[0][1] a[0][2]
Linha 2
a[1][0] a[1][1] a[1][2]
Linha 3
a[2][0] a[2][1] a[2][2]
Linha 4
a[3][0] a[3][1] a[3][2]
Existem 4 formas de transformar uma tabela em matriz, veja o exemplo:

Cada aluno tem a sua nota, veja a tabela abaixo:

Notas Nota 1 Nota 2

Aluno01
7 7.5
Aluno02
6 5.5
Aluno03
7 8
Aluno04
3 7.5
Aluno05
4 4.5
Existem várias formas de transformar tabelas em matrizes. Vejamos o exemplo 01:

No 1º exemplo vamos transformar uma matriz de duas colunas em 2 vetores, veja:


Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

double Nota1[];
double Nota2[];
Nota1 = new double[5];
Nota2 = new double[5];
Nota1[0] = 7;
Nota2[0] = 7.5;
Nota1[1] = 6;
Nota2[1] = 5.5;
Nota1[2] = 7;
Nota2[2] = 8;
Nota1[3] = 3;
Nota2[3] = 7.5;
Nota1[4] = 4;
Nota2[4] = 4.5;

/* O exemplo acima não é uma matriz, mas sim, dois vetores vistos na lição anterior. Podemos

substituir matrizes por vetores. Do exemplo 2 em diante, os vetores são substituídos por matrizes. */

// Para saber quanto o aluno 04 tirou na 2ª nota é fácil:


[Link](Nota2[4 - 1]);
// Observe que o aluno 04 é 3 (4-1) porque as notas iniciam com 0 e não com 1
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
7.5

C:\ExemploJava>

Exemplo 02:

Do exemplo 2 em diante transformamos a tabela em matriz.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto = "";

int Aluno01 = 0;
int Aluno02 = 1;
int Aluno03 = 2;
int Aluno04 = 3;
int Aluno05 = 4;
int Nota1 = 0;
int Nota2 = 1;

// Para não dar erros eu criei 2 Arrays e não 4 Arrays diferentes


double[][] Classe = new double[Nota2 + 1][];
Classe[Nota1] = new double[Aluno05 + 1];
Classe[Nota2] = new double[Aluno05 + 1];
Classe[Nota1][Aluno01] = 7;
Classe[Nota2][Aluno01] = 7.5;
Classe[Nota1][Aluno02] = 6;
Classe[Nota2][Aluno02] = 5.5;
Classe[Nota1][Aluno03] = 7;
Classe[Nota2][Aluno03] = 8;
Classe[Nota1][Aluno04] = 3;
Classe[Nota2][Aluno04] = 7.5;
Classe[Nota1][Aluno05] = 4;
Classe[Nota2][Aluno05] = 4.5;

// Para saber quanto o aluno 05 tirou na 1ª nota é fácil:


for (int y = 0; y <= 4; y++) {
for (int x = 0; x <= 1; x++) {
Texto += Classe[x][y] + "\n";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
7.0
7.5
6.0
5.5
7.0
8.0
3.0
7.5
4.0
4.5

C:\ExemploJava>

Exemplo 03:

O exemplo 3 não usa as variáveis Aluno01, Aluno02, Aluno03, Nota1, Nota2, em seu código:
Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto = "";

// Para não dar erros eu criei 2 Arrays e não 4 Arrays diferentes


double[][] Classe = new double[2][];
Classe[0] = new double[5];
Classe[1] = new double[5];
Classe[0][0] = 7;
Classe[1][0] = 7.5;
Classe[0][1] = 6;
Classe[1][1] = 5.5;
Classe[0][2] = 7;
Classe[1][2] = 8;
Classe[0][3] = 3;
Classe[1][3] = 7.5;
Classe[0][4] = 4;
Classe[1][4] = 4.5;

// Para saber quanto o aluno 05 tirou na 1ª nota é fácil:


for (int y = 0; y <= 4; y++) {
for (int x = 0; x <= 1; x++) {
Texto += Classe[x][y] + "\n";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
7.0
7.5
6.0
5.5
7.0
8.0
3.0
7.5
4.0
4.5

C:\ExemploJava>

Exemplo 04:
Lista de exercício:

Exercício 1. A partir da tabela abaixo, foram criados dois vetores de 6 posições: NOME e IDADE.

Nome Idade

1 Beatriz 19

2 Pedro 32

3 Cláudio 23

4 Susana 27

5 Marcos 16

6 Celina 35

Com base nesta informação, diga o que será impresso pelas instruções abaixo:

Exemplo:

Texto = "";
for (int i = 0; i <= 5; i++) {
if (idade[i] < 20) {
Texto += Nome[i] + " ";
}
}

Solução 1:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Nome[];
int idade[];
Nome = new String[6];
idade = new int[6];

Nome[0] = "Beatriz";
idade[0] = 19;
Nome[1] = "Pedro";
idade[1] = 32;
Nome[2] = "Cláudio";
idade[2] = 23;
Nome[3] = "Susana";
idade[3] = 27;
Nome[4] = "Marcos";
idade[4] = 16;
Nome[5] = "Celina";
idade[5] = 35;

String Texto;
Texto = "";
for (int i = 0; i <= 5; i++) {
if (idade[i] < 20) {
Texto += Nome[i] + " ";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Beatriz Marcos

C:\ExemploJava>

Solução 2:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto = "";

/*
Em matrizes:
Não podemos usar dois tipos de variáveis int e String ao mesmo tempo numa matriz.
Só é possível usar um tipo de variável que é a String.
*/

int nome = 0;
int idade = 1;

String[][] Matriz = new String[2][];


Matriz[nome] = new String[6];
Matriz[idade] = new String[6];

Matriz[nome][0] = "Beatriz";
Matriz[idade][0] = "19";
Matriz[nome][1] = "Pedro";
Matriz[idade][1] = "32";
Matriz[nome][2] = "Cláudio";
Matriz[idade][2] = "23";
Matriz[nome][3] = "Susana";
Matriz[idade][3] = "27";
Matriz[nome][4] = "Marcos";
Matriz[idade][4] = "16";
Matriz[nome][5] = "Celina";
Matriz[idade][5] = "35";

for (int i = 0; i <= 5; i++) {


if ([Link](Matriz[1][i]) < 20) {
Texto += Matriz[0][i] + " ";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Beatriz Marcos

C:\ExemploJava>

Solução 3:

Arquivo [Link]

<html>
<head>
<title>Teste</title>
</head>
<body>
<applet code="[Link]" name="mens" width="0" height="0">
</applet>
<script language="javascript">
app = [Link];
[Link]([Link]());
</script>
</body>
</html>

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto = "";

/*
Em matrizes:
Não podemos usar dois tipos de variáveis int e String ao mesmo tempo numa matriz.
Só é possível usar um tipo de variável que é a String.
*/

String[][] Matriz = new String[2][];


Matriz[0] = new String[6];
Matriz[1] = new String[6];

Matriz[0][0] = "Beatriz";
Matriz[1][0] = "19";
Matriz[0][1] = "Pedro";
Matriz[1][1] = "32";
Matriz[0][2] = "Cláudio";
Matriz[1][2] = "23";
Matriz[0][3] = "Susana";
Matriz[1][3] = "27";
Matriz[0][4] = "Marcos";
Matriz[1][4] = "16";
Matriz[0][5] = "Celina";
Matriz[1][5] = "35";

for (int i = 0; i <= 5; i++) {


if ([Link](Matriz[1][i]) < 20) {
Texto += Matriz[0][i] + " ";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Beatriz Marcos

C:\ExemploJava>

Solução 4:

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto = "";

/*
Em matrizes:
Não podemos usar dois tipos de variáveis int e String ao mesmo tempo numa matriz.
Só é possível usar um tipo de variável que é a String.
*/

String[][] Matriz = {
{"Beatriz", "19"},
{"Pedro", "32"},
{"Cláudio", "23"},
{"Susana", "16"},
{"Marcos", "16"},
{"Celina", "35"}
};

for (int i = 0; i <= 5; i++) {


if ([Link](Matriz[i][1]) < 20) {
Texto += Matriz[i][0] + " ";
}
}
[Link](Texto);
}
}

Reslutado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Beatriz Susana Marcos

C:\ExemploJava>

Exercício 2. A tabela abaixo contém o nome de algumas ruas e o bairro onde se localizam.

Rua Bairro

Mena Barreto Botafogo

Constança Barbosa Méier

Marechal Câmara Centro

Álvaro Ramos Botafogo

Cesário Alvim Humaitá

José Clemente Niterói

As instruções a seguir iniciam um programa que cria os vetores RUAS e BAIRROS. Escreva um
programa de forma que ele imprima o nome das ruas do bairro de Botafogo.

Solução
Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto = "";

String[][] Criamatriz = new String[2][];


Criamatriz[0] = new String[6];
Criamatriz[1] = new String[6];

Criamatriz[0][0] = "Mena Barreto";


Criamatriz[1][0] = "Botafogo";
Criamatriz[0][1] = "Constança Barbosa";
Criamatriz[1][1] = "Méier";
Criamatriz[0][2] = "Marechal Câmara ";
Criamatriz[1][2] = "Centro";
Criamatriz[0][3] = "Álvaro Ramos ";
Criamatriz[1][3] = "Botafogo";
Criamatriz[0][4] = "Cesário Alvim ";
Criamatriz[1][4] = "Humaitá";
Criamatriz[0][5] = "José Clemente ";
Criamatriz[1][5] = "Niterói";

for (int i = 0; i <= 5; i++) {


Texto += "Rua: " + Criamatriz[0][i] + ", bairro: " + Criamatriz[1][i] + "\n";
}

Texto += "<br>Ruas do bairro de Botafogo\n\n";

for (int i = 0; i <= 5; i++) {


if (Criamatriz[1][i] == "Botafogo") {
Texto += "Nome da Rua: " + Criamatriz[0][i];
Texto += "Nome do bairro: " + Criamatriz[1][i] + "\n";
}
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Rua: Mena Barreto, bairro: Botafogo
Rua: Constança Barbosa, bairro: Méier
Rua: Marechal Câmara , bairro: Centro
Rua: Álvaro Ramos , bairro: Botafogo
Rua: Cesário Alvim , bairro: Humaitá
Rua: José Clemente , bairro: Niterói
<br>Ruas do bairro de Botafogo

Nome da Rua: Mena BarretoNome do bairro: Botafogo


Nome da Rua: Álvaro Ramos Nome do bairro: Botafogo

C:\ExemploJava>

Exercício 5. Faça um programa para imprimir o signo do zodíaco correspondente a uma data qualquer
(dia / mês).

A tabela a seguir mostra o último dia de cada mês e o signo correspondente:

Mes Último dia Signo

01 20 Capricórnio

02 19 Aquário

03 20 Peixes

04 20 Áries

05 20 Touro

06 20 Gêmeos

07 21 Câncer

08 22 Leão

09 22 Virgem

10 22 Libra

11 21 Escorpião

12 21 Sagitário

Importante: Armazene o horóscopo em uma array.

Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {

String Texto = "";

// {mes, dia, signo}


String[][] SuperArray = {
{"1", "20", "Capricórnio"},
{"2", "19", "Aquário"},
{"3", "20", "Peixes"},
{"4", "20", "Áries"},
{"5", "20", "Touro"},
{"6", "20", "Gêmeos"},
{"7", "21", "Câncer"},
{"8", "22", "Leão"},
{"9", "22", "Virgem"},
{"10", "22", "Libra"},
{"11", "21", "Escorpião"},
{"12", "21", "Sagitário"}
};
int mes = 0;
int dia = 1;
int signos = 2;

Texto += "Tabela de signos\n\n";

for (int x = 0; x <= 11; x++) {


Texto += SuperArray[x][signos] + " último dia " + [Link](SuperArray[x][dia]) +" / " +
[Link](SuperArray[x][mes]) + "\n";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Tabela de signos

Capricórnio último dia 20 / 1


Aquário último dia 19 / 2
Peixes último dia 20 / 3
Áries último dia 20 / 4
Touro último dia 20 / 5
Gêmeos último dia 20 / 6
Câncer último dia 21 / 7
Leão último dia 22 / 8
Virgem último dia 22 / 9
Libra último dia 22 / 10
Escorpião último dia 21 / 11
Sagitário último dia 21 / 12

C:\ExemploJava>

Exercício 6. Faça um programa que imprima na tela a seguinte tabela abaixo:

Índice Planeta Luas Anos Distância


1 Mercúrio 0 0.024 58
2 Vênus 0 0.625 108
3 Terra 1 1 150
4 Marte 2 1.91 228
5 Júpiter 16 12 778
6 Saturno 18 29.9 1427
7 Urano 15 85.24 2869
8 Netuno 8 167.19 4498
9 Plutão 1 251.29 5900
Arquivo [Link]

// [Link]
public class ExemploJava {
public static void main(String[] args) {
String Texto = "";

int Planeta = 0;
int luas = 1;
int anos = 2;
int distancia = 3;

String[][] Matriz = new String[distancia + 1][];


Matriz[Planeta] = new String[4];
Matriz[luas] = new String[4];
Matriz[anos] = new String[4];
Matriz[distancia] = new String[4];

Matriz[Planeta][0] = "Mercúrio";
Matriz[luas][0] = "0";
Matriz[anos][0] = "0.24";
Matriz[distancia][0] = "58";
Matriz[Planeta][1] = "Vênus";
Matriz[luas][1] = "0";
Matriz[anos][1] = "0.625";
Matriz[distancia][1] = "108";
Matriz[Planeta][2] = "Terra";
Matriz[luas][2] = "1";
Matriz[anos][2] = "1";
Matriz[distancia][2] = "150";
Matriz[Planeta][3] = "Marte";
Matriz[luas][3] = "2";
Matriz[anos][3] = "1.91";
Matriz[distancia][3] = "228";

Texto += "Planeta luas anos distância\n\n";

for (int indice = 0; indice <= 3; indice++) {


Texto += Matriz[Planeta][indice] + " " + [Link](Matriz[luas][indice]) + " " +
[Link](Matriz[anos][indice]) + " " + [Link](Matriz[distancia][indice]) + "\n";
}
[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]
C:\ExemploJava>java ExemploJava
Planeta luas anos distância

Mercúrio 0 0.24 58
Vênus 0 0.625 108
Terra 1 1.0 150
Marte 2 1.91 228

C:\ExemploJava>

ArrayList
add(Object o): adiciona à coleção o objeto passado como argumento.

size(): retorna o tamanho da coleção

get(int index): retorna um objeto dada uma posição.

import [Link];

public class JavaTeste {


public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista


[Link]("Banana");
[Link]("Melão");
[Link]("Goiaba");
[Link]("Morango");

// exibe os valores da lista


for(int i = 0; i < [Link](); i++){
[Link]([Link](i));
}

}
}

Resultado:

Banana
Melão
Goiaba
Morango

add(int index, Object element): adiciona um objeto dada uma posição.

import [Link];

public class JavaTeste {


public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista


[Link]("Banana");
[Link]("Melão");
[Link]("Goiaba");
[Link]("Morango");

[Link](1, "======");

// exibe os valores da lista


for(int i = 0; i < [Link](); i++){
[Link]([Link](i));
}

}
}

Resultado:

Banana
======
Melão
Goiaba
Morango

set(int index, Object element): edita um objeto dada uma posição.

import [Link];

public class JavaTeste {


public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista


[Link]("Banana");
[Link]("Melão");
[Link]("Goiaba");
[Link]("Morango");

[Link](1, "======");

// exibe os valores da lista


for(int i = 0; i < [Link](); i++){
[Link]([Link](i));
}

}
}

Resultado:

Banana
======
Goiaba
Morango

remove(int index): remove um objeto dada sua posição.


import [Link];

public class JavaTeste {


public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista


[Link]("Banana");
[Link]("Melão");
[Link]("Goiaba");
[Link]("Morango");

[Link](1);

// exibe os valores da lista


for(int i = 0; i < [Link](); i++){
[Link]([Link](i));
}

}
}

Resultado:

Banana
Goiaba
Morango

clear(): apaga todo o conteúdo da coleção.

import [Link];

public class JavaTeste {


public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista


[Link]("Banana");
[Link]("Melão");
[Link]("Goiaba");
[Link]("Morango");

[Link]();

// exibe os valores da lista


for(int i = 0; i < [Link](); i++){
[Link]([Link](i));
}

}
}

Resultado
boolean contains(Object o): verifica se o objeto passado como argumento existe na coleção.

ArrayList lista = new ArrayList();


[Link](“Jose”);
[Link](“Maria”);
[Link]([Link](“Jose”)); // True

Object[ ] toArray(): converte os elementos da coleção em um array (rápidos acesso aos elementos).

ArrayList lista = new ArrayList();


[Link](“Jose”);
[Link](“Maria”);
[Link](“Joao”);
Object[] elementos = [Link]();
for(int i=0; i<[Link];i++) {
[Link](elementos[i]);
}

int indexOf (Object o): retorna a posição de um objeto.

ArrayList lista = new ArrayList();


[Link](“Jose”);
[Link](“Maria”);
[Link](“João”);
[Link](“Maria”); //1

int lastIndexOf (Object o): retorna o último índice de um objeto.

ArrayList lista = new ArrayList();


[Link](“Maria”);
[Link](“Maria”);
[Link](“Maria”); //1

ArrayList (Matriz)
Não utilize Matriz no ArraList, pode acontecer erros.

Arquivo: [Link]

import [Link];

public class JavaTeste {


public static void main(String[] args) {
ArrayList < ArrayList > Exemplo = new ArrayList < ArrayList > ();

int numero_deLinhas = 4;

for (int i = 0; i < numero_deLinhas; i++) {


[Link](new ArrayList < String > ());
}

[Link](0).add("Linha 1 Coluna 1");


[Link](0).add("Linha 1 Coluna 2");
[Link](0).add("Linha 1 Coluna 3");

[Link](1).add("Linha 2 Coluna 1");


[Link](1).add("Linha 2 Coluna 2");
[Link](1).add("Linha 2 Coluna 3");

[Link](2).add("Linha 3 Coluna 1");


[Link](2).add("Linha 3 Coluna 2");
[Link](2).add("Linha 3 Coluna 3");

[Link](3).add("Linha 4 Coluna 1");


[Link](3).add("Linha 4 Coluna 2");
[Link](3).add("Linha 4 Coluna 3");

for (int i = 0; i < numero_deLinhas; i++) {


for (int j = 0; j < [Link](); j++) {
try {
[Link]([Link](i).get(j));
} catch (IndexOutOfBoundsException e) {}
}
}

}
}

Resultado:

Linha 1 Coluna 1
Linha 1 Coluna 2
Linha 1 Coluna 3
Linha 2 Coluna 1
Linha 2 Coluna 2
Linha 2 Coluna 3
Linha 3 Coluna 1
Linha 3 Coluna 2
Linha 3 Coluna 3
Linha 4 Coluna 1
Linha 4 Coluna 2
Linha 4 Coluna 3

Criando funções
Função é um subprograma de linguagem de computador que faz alguns cálculos e retorna um único valor
para o programa principal.
Exemplo:

Arquivo [Link]

public class ExemploJava {

public static float Calcule(float a, float b, float c) {


float d = a * b / c;
return d;
}

public static void main(String[] args) {


[Link](Calcule(4, 3, 2));
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
6.0

C:\ExemploJava>

O comando returné uma instrução que encerra o processamento de uma função e transfere o controle de
volta ao módulo que o chamou, e (opcionalmente) especifica o valor da função.

A função acima retornou o valor que é 6.

Uma função pode retornar ou não poder retornar valores, basta não usar a instrução return.

Exemplo:

Arquivo [Link]

public class ExemploJava {

public static void Calcule(float a, float b, float c) {


float d = a * b / c;

[Link](d);
}

public static void main(String[] args) {


Calcule(4, 3, 2);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
6.0

C:\ExemploJava>

O exemplo acima a função não retornou valores.

Em um único programa pode ser armazenado várias funções diferentes, por exemplo:

Arquivo [Link]

public class ExemploJava {

// Funções
public static float Adicao(float a, float b) {
float c = a + b;
return c;
}

public static float Subtracao(float a, float b) {


return a - b;
}

public static float Multiplicacao(float a, float b) {


float c = a * b;
return c;
}

public static float Divisao(float a, float b) {


return a / b;
}

public static void main(String[] args) {


[Link]("2 + 8 = " + Adicao(2, 8) + "\n");
[Link]("7 - 3 = " + Subtracao(7, 3) + "\n");
[Link]("3 * 4 = " + Multiplicacao(3, 4) + "\n");
[Link]("8 / 2 = " + Divisao(8, 2) + "\n");
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
2 + 8 = 10.0

7 - 3 = 4.0

3 * 4 = 12.0

8 / 2 = 4.0

C:\ExemploJava>
Lista de exercícios

Exercício 1. Crie uma função que calcule a soma de dois números

Arquivo [Link]

public class ExemploJava {

public static float soma(float x, float y) {


float sum = x + y;
return sum;
}

public static void main(String[] args) {


[Link]("A soma de 5 e 4 é " + soma(5, 4));
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
A soma de 5 e 4 é 9.0

C:\ExemploJava>

Exercício 2. Crie uma função que calcule o cubo de um número.

Arquivo [Link]

public class ExemploJava {

public static float cubo(float x) {


float cubo;
cubo = x * x * x;
return cubo;
}

public static void main(String[] args) {


[Link]("O cubo de 8 é igual a " + cubo(8));
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
O cubo de 8 é igual a 512.0

C:\ExemploJava>

Exercício 3. Crie uma função que calcule a área do retângulo

Arquivo [Link]

public class ExemploJava {

public static float calcArea(float largura, float altura) {


float a = largura * altura;
return a;
}

public static void main(String[] args) {


float largura = 4;
float altura = 8;
[Link](calcArea(largura, altura));
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
32.0

C:\ExemploJava>

Exercício 4. Crie uma função que calcule números fatoriais

Arquivo [Link]

public class ExemploJava {

public static int fatorial(int num) {


int res = 1;
for (int k = num; k >= 1; k--) {
res = res * k;
}
return res;
}

public static void main(String[] args) {


for (int k = 1; k <= 10; k++) {
[Link](k + " != " + fatorial(k));
}
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
1 != 1
2 != 2
3 != 6
4 != 24
5 != 120
6 != 720
7 != 5040
8 != 40320
9 != 362880
10 != 3628800

C:\ExemploJava>

Variáveis Públicas
Variáveis públicas (ou variáveis globais)são variáveis cujo valor pode ser acessado e modificado por
qualquer instrução de um programa. Ou seja, a variável fica visível para o programa inteiro, inclusive
suas instruções e funções.

Em programas pequenos não é muito vantajoso usar variáveis públicas, quando o programa é muito
grande, com mais de 1.00 linhas de texto é que usamos as variáveis públicas.

Analisemos o programa a seguir:

Arquivo [Link]

<html>
<head>
<title>Teste</title>
</head>
<body>
<applet code="[Link]" name="mens" width="0" height="0">
</applet>
<script language="javascript">
app = [Link];
[Link]([Link]());
</script>
</body>
</html>

Arquivo [Link]

public class ExemploJava {


public static String Texto = "";
public static int v1 = 0;
public static int v2 = 0;

public static void funcao1() {

v1 = 100;

Texto += "Estamos dentro da rotina FUNÇÃO1... v1= " + v1 + "\n";

funcao2();

Texto += "Voltamos para FUNÇÃO1... v1=" + v1 + "\n";

Texto += "v2=" + v2 + "\n";

public static void funcao2() {

// public int v2;


v1 = 200;

v2 = 300;

Texto += "Estamos na rotina FUNÇÃO2... v1=" + v1 + "\n";

Texto += "v2=" + v2 + "\n";

public static void main(String[] args) {

Texto = "Exemplo de variável pública\n";

// public int v1;


v1 = 500;

Texto += "Variável v1 antes da execução das rotinas " + v1 + "\n";

funcao1();

Texto += "Estamos fora de FUNÇÃO1 após sua execução v1=" + v1 + "\n";


[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Exemplo de variável pública
Variável v1 antes da execução das rotinas 500
Estamos dentro da rotina FUNÇÃO1... v1= 100
Estamos na rotina FUNÇÃO2... v1=200
v2=300
Voltamos para FUNÇÃO1... v1=200
v2=300
Estamos fora de FUNÇÃO1 após sua execução v1=200

C:\ExemploJava>

Resultado:

Exemplo de variável pública


Variável v1 antes da execução das rotinas 500
Estamos dentro da rotina FUNÇÃO1... v1= 100
Estamos na rotina FUNÇÃO2... v1=200
v2=300
Voltamos para FUNÇÃO1... v1=200
v2=300
Estamos fora de FUNÇÃO1 após sua execução v1=20

Para declarar uma variável pública é muito fácil, bata colocar public na frente da variável, ex:

Public String variavel="Teste"

Declare esta variável no início do programa e não no meio ou no fim do programa; porque pode causar
erros no programa.

Variáveis nulas (NULL)


Afinal o que Null?

1 - Null é um valor que indica dados ausentes ou desconhecidos em um campo

2 - nulo

3 - vazio

4 - sem valor

Assim como existe variáveis numéricas (var_1=9), variáveis strings (var_2="Texto") e variáveis
booleanas (var_3=true) existem as variáveis nulas (var_4=null).

Atenção: encontrar variáveis nulas num código fonte são raros, mas de vez enquanto aparecem, os
exemplos abaixo são simplesmente demonstrações.

Quando você que limpar uma variável em faço o seguinte:

1º exemplo:

Arquivo [Link]
public class ExemploJava {

public static void main(String[] args) {

/*
Obs: em Java as variáveis nulas (null) só são usadas em váriáveis String.
Se usar outra varável numérica como int, double, float não vão funcionar.
*/

int Var_1;
String Var_2;
boolean Var_3;

Var_1 = 9;
Var_2 = "Texto";
Var_3 = true;

//Limpando as variáveis
Var_1 = null; // Var_1 deu erro porque é um inteiro e não uma String
Var_2 = null; // Var_2 não deu erro porque é uma String
Var_3 = null; // Var_3 deu erro porque é um booleano e não uma String
}
}

Resultado:

C:\ExemploJava>javac [Link]
[Link][Link] error: incompatible types
Var_1 = null; // Var_1 deu erro porque é um inteiro e não uma String
^
required: int
found: <null>
[Link][Link] error: incompatible types
Var_3 = null; // Var_3 deu erro porque é um booleano e não uma String
^
required: boolean
found: <null>
2 errors

C:\ExemploJava>

2º exemplo:

Arquivo [Link]

public class ExemploJava {

public static void main(String[] args) {


/*
Obs: em Java as variáveis nulas (null) só são usadas em váriáveis String.
Se usar outra varável numérica como int, double, float não vão funcionar.
*/
String Nome;
String Sobrenome;

Nome = null;
Sobrenome = null;

if (Nome == null) {
Nome = "Marcos";
}

if (Sobrenome == null) {
Sobrenome = "Aurelio";
}
[Link](Nome + " " + Sobrenome);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Marcos Aurelio

C:\ExemploJava>

3º exemplo:

Arquivo [Link]

public class ExemploJava {

public static void main(String[] args) {


/*
Obs: em Java as variáveis nulas (null) só são usadas em váriáveis String.
Se usar outra varável numérica como int, double, float não vão funcionar.
*/

String a;
String b;
String c;
float resp;

a = "10";
b = null;
c = "5";

resp = 0;
if (a == null) {
resp = [Link](b) + [Link](c);
} else if (b == null) {
resp = [Link](a) + [Link](c);
} else if (c == null) {
resp = [Link](a) + [Link](b);
} else {
resp = [Link](a) + [Link](b) + [Link](c);
}
[Link]("" + resp);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
15.0

C:\ExemploJava>

Biblioteca de funções
O Javascript possui um conjunto bastante vasto de funções com aplicação específica.

As funções são muito vantajosas para o usuário, pois permitem diminuir o tempo gasto na elaboração de
formulários, assim como eventuais erros na sua concepção.

As funções do Javascript agrupam-se em:

• Funções matemáticas;
• Funções tipo string;
• Funções tipo data;
• Funções tipo hora;
• Funções do sistema operacional;
• Banco de dados;
• Outras funções.

As funções do Javascript tem a seguinte sintaxe:

= nomedafunção(argumentos)

Os tipos de argumentos variam de função para função e em relação às necessidades de cálculo do usuário.

Os tipos de argumentos mais utilizados são: variáveis numéricas, variáveis strings, variáveis booleanas,
arrays e propriedades.

Exemplos (teóricos) de funções:

Inicio

escreva( Potencia(2, 6) )

escreva( Soma(12, 36) )


escreva( Media(8, 3) )

Fim

Funções Matemáticas
Para auxiliar os cálculos matemáticos, além dos operadores matemáticos de adição, subtração,
multiplicação e divisão existem outras funçoes matemáticas.

Algumas funções são comuns, tais como: raiz quadrada, potênciação, módulo, etc. Outras exigem
conhecimento a nível de 2º grau tais como: trigonometria e logarítmos.

Vejamos

Covertendo string para numérica

public class ExemploJava {

public static void main(String[] args) {


String Texto;
Texto = "";

// ==> Para testar, coloque o script abaixo aqui <==


[Link](Texto);

}
}

Atenção:
Se colocarmos números reais dentro de um conversor de números inteiros, sempre da erros, então:
Use conversores de números inteiros para números inteiros e
Use conversores de números reais para números reais.
Observando que os números devem ficar dentro da faixa estabelacida por Java.

Números Inteiros

De -128 a +127 (8 bits).


Transforma string em inteiro

Exemplo:
[Link](string)
byte valor=[Link]("127");
Texto = "" + valor;

Resultado: 127

De -32.768 a +32.767 (16 bits)

Transforma string em inteiro


[Link](string)
Exemplo:
short valor=[Link]("-55");
Texto = "" + valor;
Resultado: -55

De -[Link] a +[Link] (32 bits)


Transforma string em inteiro

Exemplo:
[Link](String)
int valor=[Link]("1456");
Texto = "" + valor;

Resultado: 79

De -[Link].854.775.808 a +[Link].854.775.807 (64 bits)


Transforma string em inteiro

Exemplo:
[Link](string)
long valor=[Link]("5673456");
Texto = "" + valor;

Resultado: 79

Números Reais

(32 bits)
Transforma string em número real

Exemplo:
[Link](String)
double valor=[Link]("79.65732");
Texto = "" + valor;

Resultado: 79.65732

(64 bits)
Transforma string em número real

Exemplo:
[Link](string)
double valor=[Link]("79.65732");
Texto = "" + valor;

Resultado: 79.65732

Booleanos

Lógico

Transforma string em número real

[Link](string) Exemplo:
boolean valor=[Link]("true");
Texto = "" + valor;

Resultado: true
Arredondando valores

• [Link](número) - Devolve o inteiro anterior menor que "número" 32.5 torna-se 32 e -24.8
torna-se -24.
• [Link](número) - Devolve o inteiro maior que o "número" 32.5 torna-se 33 e -24.8 torna-se -25.
• [Link](número) - Arredonda "número" para o inteiro mais próximo. Se a porção decimal do
número for 0.5, o número arredonda para cima.

Funções matemáticas comuns

• [Link]() - Devolve um número aleatório entre 0 e 1.


• [Link](número) - Valor absoluto do "número", ou seja, sempre o valor idependente do sinal
(positivo ou negativo) -4 fica igual a 4.
• [Link](num1, num2) - Devolve o número maior dos números "num1" e "num2".
• [Link](num1, num2) - Devolve o número menor dos números "num1" e "num2".
• [Link](num, expoente) - Devolve "num" elevado a "expoente".
• [Link](número) - Raiz quadrada de "número".
• Math.SQRT1_2 - Raiz quadrada de 1/2 (aproximadamente 0.7071067811865476).
• Math.SQRT2 - Raiz quadrada de 2 (aproximadamente 1.4142135623730951).

Funções trigonométricas

• [Link] - Retorma o valor de PI (aproximadamente 3.141592653589793).

• [Link](número) - Retorna o seno de um número (em radianos).


• [Link](número) - Retorna o cosseno de um número (em radianos).
• [Link](número) - Retorna a tangente de um número (em radianos).

• [Link](número) - Retorna o arco seno de um número (em radianos).


• [Link](número) - Retorna o arco cosseno de um número (em radianos).
• [Link](número) - Retorna o arco tangente de um número (em radianos).

Calculando o seno, cosseno e tangente pelo computador

Se o argumento estiver em graus, multiplique-o por PI()/180 ou use a função radianos() para convertê-lo
em radianos.

Exemplo:

Arquivo [Link]

public class ExemploJava {

public static double radianos() {


return [Link] / 180;
}

public static void main(String[] args) {


String Texto;
Texto = "";

Texto += "\n" + [Link]([Link]); // O seno de radianos de pi(0, aproximadamente). Resultado:


1.2246063538223773e-16
Texto += "\n" + [Link]([Link] / 2); // O seno de radianos de pi/2 (1). Resultado: 1
Texto += "\n" + [Link](30 * [Link] / 180); // O seno de 30 graus (0,5). Resultado:
0.49999999999999994
Texto += "\n" + [Link](30 * radianos()); // O seno de 30 graus (0,5). Resultado:
0.49999999999999994
Texto += "\n" + [Link](60 * [Link] / 180); // O cosseno de 60 graus (0,5). Resuntado:
0.5000000000000001
Texto += "\n" + [Link](60 * radianos()); // O cosseno de 60 graus (0,5). Resultado:
0.5000000000000001
Texto += "\n" + [Link](45 * [Link] / 180); // A tangente de 45 graus (1). Resultado:
0.9999999999999999
Texto += "\n" + [Link](45 * radianos()); // A tangente de 45 graus (1). Resultado:
0.9999999999999999
[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava

1.2246467991473532E-16
1.0
0.49999999999999994
0.49999999999999994
0.5000000000000001
0.5000000000000001
0.9999999999999999
0.9999999999999999

C:\ExemploJava>

Calculando o arco seno, arco cosseno e arco tangente pelo computador

Retorna o arco seno ou o seno inverso de um número. O arco seno é o ângulo cujo seno é núm. O ângulo
retornado é fornecido em radianos; o mesmo para arco cosseno e arco tangente.

Para expressar o arco seno em graus, multiplique o resultado por 180/PI( ) ou use a função graus().

Arquivo [Link]

public class ExemploJava {

public static double graus() {


return 180 / [Link];
}

public static void main(String[] args) {


String Texto;
Texto = "";

Texto += "\n" + [Link]([Link](0.5) * 180 / [Link]); // O arco seno de 0,5 em graus é 30


Texto += "\n" + [Link]([Link](0.5) * graus()); // O arco seno de 0,5 em graus é 30
Texto += "\n" + [Link]([Link](-0.5) * 180 / [Link]); // O arco cosseno de -0.5 em graus é
120
Texto += "\n" + [Link]([Link](-0.5) * graus()); // O arco cosseno de -0.5 em graus é 120
Texto += "\n" + [Link]([Link](1) * 180 / [Link]); // O arco tangente de 1 em graus é 45
Texto += "\n" + [Link]([Link](1) * graus()); // O arco tangente de 1 em graus é 45

[Link](Texto);

}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava

30
30
120
120
45
45

C:\ExemploJava>

Funções de tratamento de String


Manipulando Strings

O Javascript é bastante poderoso no manuseio de Strings, fornecendo ao programador uma total


flexibilidade em seu manuseio.

Abaixo apresentamos os métodos disponíveis para manuseio de strings.

public class ExemploJava {

public static void main(String[] args) {


String Texto;
Texto = "";

// ==> Para testar, coloque o script abaixo aqui <==


[Link](Texto);

}
}

length()
Retorna o comprimento de uma String.
* Obs: Com length parenteses.

Exemplo:
String s="Esta e uma string de texto";
Texto = "Tamanho da String = "+[Link]()+" caracteres";

Resultado:
Tamanho da String = 26 caracteres

O método substring (subcadeia) retorna a cadeia que se estende do indice Inicial até o
caractere logo antes de indice final. Se indice Inicial for maior que indice final, o
método funciona como se ambos estivessem com as posições trocadas. Se os dois
índices forem iguais, retorna uma cadeia vasia.

substring(indiceIni Exemplo:
cial, indiceFinal) String s="Esta e uma string de texto";
String s1=[Link](4, 10);
Texto = s1;

Resultado:
"e uma"

Funciona da mesma forma que o substring, só que, retorna o caractere simples em


uma posição específica na String.

Exemplo:
charAt(posição) String s="Esta e uma string de texto";
char s1=[Link](5);
Texto = ""+s1;

Resultado: "e"

O método indexOf faz a busca no objeto string pela primeira ocorrência do caractere
e retorna o índice correspondente. o argumento inicIndex é opcional e indica a partir
de onde inicia a busca. Podemos localizar os valores dos índices para todos os
caracteres do mesmo tipo iniciando após o índice anterior.

Exemplo:
String text="Hello, world!";
int index=0;
indexOf(caractere,
Texto += "<pre>";
[inicIndex])
while(index<[Link]("l")) {
index= [Link]("l", index+1);
Texto += index+"\t";
}
Texto += "\n";
Texto += "</pre>";

Resultado:" 2 3 10"

O método lasIndexOf é idêntico ao método index of exceto que faz a busca do


lastIndexOf(caract
caractere na cadeia do fim para o começo iniciando em inicIndex.
ere, [inicIndex])
Veja o exemplo anterior

replace(palavra, O método replace você insere uma palavra ou uma letra em que você deseja
substituir por outra.

Exemplo:
String s="Este automovel é caro";
substituto)
Texto = [Link]("automovel", "carro");

Resultado:
Este carro é caro

O método toLowerCase (para minúsculo) retorna a cadeia com todos os caracteres


alterados para minúsculo.

Exemplo:
toLowerCase() String s="ISTO É UM EXEMPLO";
Texto = [Link]();

Resultado:
isto é um exemplo

O método toUpperCase (para maiúsculo) retorna a cadeia com todos os caracteres


alterados para maiúsculo.

Exemplo:
toUpperCase() String s="isto é um exemplo";
Texto = [Link]();

Resultado:
ISTO É UM EXEMPLO

Ordenar String em Ordem Alfabética


Arquivo: [Link]

import [Link];
public class ExemploJava {

public static ArrayList Texto;

public static void main(String[] args) {


Texto = new ArrayList();
[Link]("Tiago");
[Link]("Maria");
[Link]("Pedro");
[Link]("Carlos");
[Link]("Fabio");
[Link]("Ana");
[Link]("Francisco");
[Link]("Bianca");
String memo = "";

int total = [Link]();


if (total > 1) {
for (int x = 0; x < total - 1; x++) {
for (int y = x + 1; y < total; y++) {
if ([Link](x).toString().compareTo([Link](y).toString()) > 0) {
memo = [Link](x).toString();
[Link](x, [Link](y));
[Link](y, memo);
}
}
}
}
for (int z = 0; z < total; z++) {
[Link]([Link](z));
}
}
}

Resultado:

C:\ExemploJava>javac [Link]
Note: [Link] uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

C:\ExemploJava>java ExemploJava
Ana
Bianca
Carlos
Fabio
Francisco
Maria
Pedro
Tiago

C:\ExemploJava>

Manipulando datas e horas


Existe apenas uma função para que se possa obter a data e a hora. É a função [Link]().
Esta funão devolve data e hora no formanto: Dia da semana, Nome do mês, Dia do mês,
Hora:Minuto:Segundo e Ano

Ex:

Fri May 24 [Link] 1996

Para se obter os dados separadamente, existem os seguintes métodos:

• get([Link]) - Retorna o dia do mês (inteiro entre 1 e 31)


• .get(Calendar.DAY_OF_WEEK) - Retorna o dia da semana (1=Domingo, 2=Segunda-feira,... ,
7=Sábado)
• get([Link]) - Retorna o mês (entre 0=Janeiro e 11=Dezembro)
• get([Link]) - Retorna o ano com quatro dígitos (o mais usado)
• get(Calendar.HOUR_OF_DAY) - Retorna a hora do dia (entre 0 e 23)
• get([Link]) - Retorna os minutos dentro da hora (entre 0 e 59)
• get([Link]) - Retorna os segundos (entre 0 e 59)

No exemplo 1 abaixo obteremos o dia da semana e as horas. Para tal, utilizaremos a variável DataToda
para armazenar data e hora.

Arquivo [Link]

/*
Não use getYear, getDay (Como no Javascript).
a) São métodos "deprecated" - ou seja, não devem ser usados. Em vez disso, use [Link].

b) Você não leu a documentação direito. getYear lhe volta o ano menos 1900, ou seja, para 2006 ele lhe
retorna 2006 - 1900 = 106. getDay volta o dia da semana, sendo 0 = Domingo. E getMonth lhe retorna 0
para janeiro, 1 para fevereiro, e assim por diante.

c) Quando a linguagem Java foi definida, só existia o [Link], e ela era bem boboca (o próprio
James Gosling que a escreveu, e ele não quis pôr um monte de frescuras nela)
Na versão 1.1 alguém na Sun comprou um monte de código fonte da Taligent, uma joint-venture entre a
IBM, a Apple e mais algumas companhias. Nesse pacotão veio a classe [Link], que é
terrivelmente complicada, e para encurtar a conversa eles disseram que tínhamos de usar [Link] E
[Link], sendo que aquelas coisas tipo "getDate", "getMonth", "getYear" que existem em
[Link] não deveriam mais ser usadas.
*/

import [Link];

public class ExemploJava {

public static void main(String[] args) {


String Texto;
Texto = "";

Calendar DataToda = [Link]();

int Dia_do_mes = [Link]([Link]);


int Dia_da_semana = [Link](Calendar.DAY_OF_WEEK);
int Mes = [Link]([Link]);
int Ano = [Link]([Link]);

// ---------------------------------------
int Horas = [Link](Calendar.HOUR_OF_DAY);
int Minutos = [Link]([Link]);
int Segundos = [Link]([Link]);
// ---------------------------------------
String semana[];
semana = new String[8];
semana[0] = "";
semana[1] = "Domingo";
semana[2] = "Segunda";
semana[3] = "Terça";
semana[4] = "Quarta";
semana[5] = "Quinta";
semana[6] = "Sexta";
semana[7] = "Sabado";
String Semana_atual = semana[Dia_da_semana];
//-------------------------
String Mes2[];
Mes2 = new String[12];
Mes2[0] = "Janeiro";
Mes2[1] = "Fevereiro";
Mes2[2] = "Março";
Mes2[3] = "Abril";
Mes2[4] = "Maio";
Mes2[5] = "Junho";
Mes2[6] = "Julho";
Mes2[7] = "Agosto";
Mes2[8] = "Setembro";
Mes2[9] = "Outubro";
Mes2[10] = "Novembro";
Mes2[11] = "Desembro";
String Mes_atual = Mes2[Mes];
Texto += Semana_atual + ", " + Dia_do_mes + " de " + Mes_atual + " de " + Ano;
Texto += "\n";
Texto += "São: " + Horas + " horas, " + Minutos + " minutos e " + Segundos + " segundos.";

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Sabado, 27 de Fevereiro de 2016
São: 6 horas, 55 minutos e 27 segundos.

C:\ExemploJava>

exemplo 4: alterando a data

Para criar uma variável tipo Date com o conteúdo informado pela aplicação, existe o método set. Os mas
importantes são:

• set([Link], x_dia) - Coloca o dia do mês (valor entre 1 e 31)


• set([Link], mes) - coloca o mês (valor entre 0 e 11)
• set([Link], ano) - coloca os anos

Você pode simplificar as datas veja:

• set(ano, mes, dia)

Tanto pode usar esta forma quanto da outra.

Arquivo [Link]
/*
Não use getYear, getDay (Como no Javascript).
a) São métodos "deprecated" - ou seja, não devem ser usados. Em vez disso, use [Link].

b) Você não leu a documentação direito. getYear lhe volta o ano menos 1900, ou seja, para 2006 ele lhe
retorna 2006 - 1900 = 106. getDay volta o dia da semana, sendo 0 = Domingo. E getMonth lhe retorna 0
para janeiro, 1 para fevereiro, e assim por diante.

c) Quando a linguagem Java foi definida, só existia o [Link], e ela era bem boboca (o próprio
James Gosling que a escreveu, e ele não quis pôr um monte de frescuras nela)
Na versão 1.1 alguém na Sun comprou um monte de código fonte da Taligent, uma joint-venture entre a
IBM, a Apple e mais algumas companhias. Nesse pacotão veio a classe [Link], que é
terrivelmente complicada, e para encurtar a conversa eles disseram que tínhamos de usar [Link] E
[Link], sendo que aquelas coisas tipo "getDate", "getMonth", "getYear" que existem em
[Link] não deveriam mais ser usadas.
*/

import [Link];

public class ExemploJava {

public static void main(String[] args) {


String Texto;
Texto = "";

Calendar DataToda = [Link]();

int x_dia = 28;


int x_mes = 4;
int x_ano = 1997;

// Tando pode usar desta forma:


// [Link](x_ano, x_mes, x_dia);
//Quanto desta outra forma:
[Link]([Link], x_ano);
[Link]([Link], x_mes);
[Link]([Link], x_dia);

// ---------------------------------------
int Dia_do_mes = [Link]([Link]);
int Dia_da_semana = [Link](Calendar.DAY_OF_WEEK);
int Mes = [Link]([Link]);
int Ano = [Link]([Link]);

String semana[];
semana = new String[8];
semana[0] = "";
semana[1] = "Domingo";
semana[2] = "Segunda";
semana[3] = "Terça";
semana[4] = "Quarta";
semana[5] = "Quinta";
semana[6] = "Sexta";
semana[7] = "Sabado";
String Semana_atual = semana[Dia_da_semana];
//-------------------------
String Mes2[];
Mes2 = new String[12];
Mes2[0] = "Janeiro";
Mes2[1] = "Fevereiro";
Mes2[2] = "Março";
Mes2[3] = "Abril";
Mes2[4] = "Maio";
Mes2[5] = "Junho";
Mes2[6] = "Julho";
Mes2[7] = "Agosto";
Mes2[8] = "Setembro";
Mes2[9] = "Outubro";
Mes2[10] = "Novembro";
Mes2[11] = "Desembro";
String Mes_atual = Mes2[Mes];
Texto += Semana_atual + ", " + Dia_do_mes + " de " + Mes_atual + " de " + Ano;

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Quarta, 28 de Maio de 1997

C:\ExemploJava>

exmeplo 3: vendo as horas

Arquivo [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {


String Texto;
Texto = "";
// Nome do arquivo: [Link]
Calendar rel = [Link]();

int hora = [Link](Calendar.HOUR_OF_DAY);


int minuto = [Link]([Link]);
int segundo = [Link]([Link]);

String temp = "" + hora;


temp += ((minuto < 10) ? ":0" : ":") + minuto;
temp += ((segundo < 10) ? ":0" : ":") + segundo;
Texto += "São exatamente: " + temp;

[Link](Texto);
}
}

Resultado:

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
São exatamente: [Link]

C:\ExemploJava>

Diferenciação de datas
Arquivo: [Link]

import [Link];

public class ExemploJava {

public static void main(String[] args) {

Calendar DataAtual = [Link]();

Calendar Data_1 = [Link]();

int x_dia = 28;


int x_mes = 4;
int x_ano = 1997;

//Quanto desta outra forma:


Data_1.set([Link], x_ano);
Data_1.set([Link], x_mes);
Data_1.set([Link], x_dia);

Calendar Data_2 = [Link]();

int y_dia = 12;


int y_mes = 6;
int y_ano = 2160;

//Quanto desta outra forma:


Data_2.set([Link], y_ano);
Data_2.set([Link], y_mes);
Data_2.set([Link], y_dia);

if (Data_1.compareTo(DataAtual) < 0) {
[Link]("Passado");
}
if (Data_2.compareTo(DataAtual) > 0) {
[Link]("Futuro");
}

}
}

No Prompt

C:\ExemploJava>javac [Link]

C:\ExemploJava>java ExemploJava
Passado
Futuro

C:\ExemploJava>

Você também pode gostar