Linguagem Java - Arrays e Strings

Post on 11-Feb-2017

457 views 2 download

Transcript of Linguagem Java - Arrays e Strings

Linguagem Java Arrays e Strings

Notas de Aula

Prof. José Cintrahttp://www.josecintra.com/blog

Strings e Arrays são estruturas de Dados básicas de toda linguagem de programação.Em Java, elas são implementadas por classes pertencentes ao núcleo da linguagem, ou seja, você não precisa importar nenhum pacote para trabalhar com essas estruturas...

Strings & Arrays - Introdução

2

Parte IStrings

3

Uma String em Java é uma seqüência de caracteres, ou seja , uma palavra, uma frase, etc.

Não possuem limite de tamanho: O limite é a memória do computador

Exemplos:“JAVA”“Curso de Java”“123Java”“123”

Observe que as constantes Strings devem ser delimitadas por aspas duplas

Strings - Conceito

4

Podem ser concatenados com o operador + ou pelo método concat

Exemplo:String s1 = “Palmeiras”;String s2 = “Campeão”;String s3 = s1.concat(“ é “) + s2;

Resultado s3 = “Palmeiras é Campeão”

Strings - Conceito

5

Strings em Java são indexadas a partir do número 0 (zero) até (N – 1) onde N é o tamanho da String (Número de caracteres)

Exemplo:Na String “JAVA”, a letra J está na posição 0 e a

letra V, na posição 2

Strings - Conceitos

6

Algumas formas de criaçãoForma comum de criação de objetos usando o

operador new:String s = new String(“Corinthians”);

Forma simplificada :

String s = “Corinthians”;Ou ainda:

String s;s = “Corinthians”;

Criação de variáveis Strings

7

Length()Retorna o tamanho da string

Exemplo:String s = “Java”;System.out.print(s.length());

Vai imprimir 4

Operações com Strings

8

charAt(int i)Retorna o caracter de índice i

Exemplo:String s = “Java”;System.out.print(s.charAt(2));

Vai imprimir v

Operações com Strings

9

indexOf(char c)Retorna o índice do caracter c

Exemplo:String s = “Java”;System.out.print(s.indexOf(‘v’));

Vai imprimir 2

Operações com Strings

10

SubstringsPode-se extrair uma substring de uma string maior através do método "substring" da classe "String".

Exemplo: String saudacao = "Bom Dia"; String s1 = saudacao.substring(0, 3);

Resultado:s1 = “Bom”

Operações com Strings

11

EqualsVerifica se duas strings são iguais

Exemplo:String s1 = “JAVA”;String s2 = “PHP”;if (s1.equals(s2))

System.out.print(“São iguais”)Else

System.out.print(“São diferentes”)

Vai ser impresso “São diferentes”

Operações com Strings

12

compareTo() Compara 2 strings. É um método que tem um argumento do tipo String e retorna um valor do tipo int.

O valor retornado é:Negativo Quando a cadeia do argumento é

maiorZero Quando a cadeia do argumento é igualPositivo Quando a cadeia do argumento é

menor

Exemplo a seguir

Operações com Strings

13

Exemplo compareTo()

String abc="abc"; String bcd="bcd"; if(abc.compareTo(bcd)== 0) System.out.println("cadeias iguais:"+abc);

if(abc.compareTo(bcd)< 0) System.out.println(abc+ " é menor que "+ bcd);

if(abc.compareTo(bcd)> 0) System.out.println(bcd+ “ é maior que "+abc);

Vai ser impresso abc é menor que bcd

Operações com Strings

14

Como vimos, as variáveis Strings são objetos que possuem vários métodos para manipulação de textos.Nestas aulas vimos alguns deles. Consulte ao manual da linguagem Java para conhecer a API completa.Um ponto importante a observar é que não podemos comparar Strings através do operador “==“, simplemente pelo fato de que este operador irá comparar os endereços dos objetos e não o seu conteúdo.

Strings – Considerações finais

15

Abrevie um nome lido pelo teclado da seguinte forma:

Primeira letra do Primeiro nome + “.” + último nome

Exemplo:

Nome Completo: José de Souza e SilvaNome abreviado: J.Silva

Strings – Exercício Resolvido

16

import java.util.*;public class AbreviaNome { public static void main(String[] args) { Scanner teclado = new Scanner(System.in); System.out.print("Informe o Nome: "); String nome = teclado.nextLine();

String abreviado = "“, primLetra, sobrenome; int ultimoEspaco; primLetra = nome.charAt(0) + "."; ultimoEspaco = nome.lastIndexOf(" "); sobrenome = nome.substring((ultimoEspaco + 1)); abreviado = primLetra + sobrenome; System.out.print("Abreviado = " + abreviado); }}

Strings – Considerações finais

17

Parte IIArrays

18

Um array é um conjunto de variáveis que possuem o mesmo nome, sendo identificadas individualmente por um índice numérico.Em Java, os arrays possuem as seguintes características:1. Todos os elementos são do mesmo tipo,

podendo ser um tipo composto, um objeto de uma classe

2. O tamanho do array é fixo;3. O índice é numérico, do tipo int, variando

de 0 até N-1, N= tamanho do array

Arrays - Conceitos

19

• Para criar um array em Java deve-se:

• Declarar a variável que conterá o array determinando seu nome tipo e quantidade de elementos

• Armazenar dados no array;

Arrays - Declaração

20

• Declaração de um array:• <tipo_array>[] <nome_variável>;

• Onde:• tipo_array: classe ou tipo primitivo da

linguagem;• nome_variável: identificador válido;

Exemplo:int[] vetor;

Arrays - Declaração

21

A criação de arrays pode ser feita de duas formas:1.Utilizando new (usado para criação de objetos)int[] vetor = new int[5]; Declaração e CriaçãoVetor[0] = 12; Vetor[1] = 3; InicializaçãoVetor[2] = 45; Individual dosVetor[3] = 4; ElementosVetor[4] = 100;

2.Inicializando o arrayint[] vetor = {12,3,45,4,100};

Arrays - Criação

22

Os índices dos arrays em Java iniciam em 0 até [tamanho – 1]

int[] vetor = new int[5];

0 1 2 3 4

Vetor de inteiros com 5 posições

Índice variando de 0 até 4

Arrays - Criação

23

0 0 0 0 0

Criar um vetor inteiro com 10 posições e preencha cada elemento com a seguinte regra:• Elementos de posição par com o valor 0;• Elementos de posição ímpar com o valor 1;• Imprimir o vetor

Para percorrermos um array, usamos as estruturas de repetição (for), variando o contador de 0 até N-1 (N= tamanho do vetor)

Resolução

Arrays – Exercício Resolvido

24

Arrays - Exercício Resolvido

25

public class ExemploVetores { public static void main(String[] args) { int[] vet = new int[10]; int conta; for(conta = 0; conta < vet.length; conta++) if(conta % 2 == 0) vet[conta] = 0; else vet[conta] = 1;

for(conta = 0; conta < vet.length; conta++) System.out.print(vet[conta]+ " " ); }}

FIM

26

Material complementar e exercícios resolvidos no blog:

http://www.josecintra.com/blog