Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Aprendendo a Usar Vetores em Java: Declaração, Inicialização e Impressão, Notas de estudo de Informática

Este documento fornece uma aula passo-a-passo sobre como declarar, inicializar e imprimir vetores em java, abordando conceitos como tamanho de vetores, acesso a posições e atribuição de valores, além de explicar a diferença entre declarar e inicializar uma variável de tipo char e um vetor de tipo char.

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 09/06/2010

aramati-paz-5
aramati-paz-5 🇧🇷

5

(1)

14 documentos

1 / 6

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
VETOR PASSO-A-PASSO
Crie seu arquivo .java e vamos começar a brincadeira.
Primeiro, vamos ver uma forma de declarar vetor em Java. Digite no seu programa (sim, ali no
main, como fizemos até hoje, sem traumas):
char[] vet ;
Agora, compile.
Process completed? Então ok!
Vamos atribuir um valor a uma posição dele.
vet[0]=’A’;
Compile.
variable vet might not have been initialized
Sem lágrimas. Você consegue traduzir:
variable = variável
vet = não tente traduzir, por favor. É o nome que você deu ao seu vetor.
might = pode
not = não
have = ter
been = sido
initialized = inicializado
Viu como não dói?
Bom, o que isso quer dizer? Quer dizer que antes de usarmos o vetor temos que inicializá-lo.
E como se faz isso?
Digite:
vet = new char[5];
Note que 5 é o tamanho do vetor. Logo, ele terá as posições de 0 a 4, ok?
Compilou? Deu certo né?
Coloque de novo aquela linha:
vet[0]=’A’;
pf3
pf4
pf5

Pré-visualização parcial do texto

Baixe Aprendendo a Usar Vetores em Java: Declaração, Inicialização e Impressão e outras Notas de estudo em PDF para Informática, somente na Docsity!

VETOR PASSO-A-PASSO

Crie seu arquivo .java e vamos começar a brincadeira. Primeiro, vamos ver uma forma de declarar vetor em Java. Digite no seu programa (sim, ali no main, como fizemos até hoje, sem traumas): char[] vet ; Agora, compile. Process completed? Então ok! Vamos atribuir um valor a uma posição dele. vet[0]=’A’; Compile. variable vet might not have been initialized Sem lágrimas. Você consegue traduzir: variable = variável vet = não tente traduzir, por favor. É o nome que você deu ao seu vetor. might = pode not = não have = ter been = sido initialized = inicializado Viu como não dói? Bom, o que isso quer dizer? Quer dizer que antes de usarmos o vetor temos que inicializá-lo. E como se faz isso? Digite: vet = new char[5]; Note que 5 é o tamanho do vetor. Logo, ele terá as posições de 0 a 4, ok? Compilou? Deu certo né? Coloque de novo aquela linha: vet[0]=’A’;

Compilou? Ok, deu certo agora. A pergunta que não quer calar: Eu não poderia declarar e inicializar numa só linha? Não sei. Teste aí pra ver sefunciona. Troque: char[] vet; vet = new char[5]; por char[] vet = new char[5]; Compilou? Deu certo? Então por que me perguntou, se só bastava você testar? Continuemos. Ahn? O que? Ah, tem outro jeito de declarar vetor, mudando a posição dos colchetes? Tem sim. Teste ali. char vet[] = new char[5]; O que? Não notou a diferença? Estava assim: char[] vet = new char[5]; Ficou assim: char vet[] = new char[5]; Pronto, sabemos que os colchetes podem estar ao lado do tipo ou ao lado do nome que demos à variável que conterá o vetor. Ouvi um zumzum... o que é mesmo? E se colocar ao lado dos dois ao mesmo tempo? Humpf! Nem vou me dar ao trabalho de explicar. Teste aí e me diga depois... Hum um!!!! Também podemos declarar direto, já inicializando com os valores. Coloque lá: char vet2 = {'A','B','C','D','E'}; Compile agora e veja o que deu. Você já tinha percebido que ia dar errado né? Mas vamos ler o erro: illegal initializer for char

Vamos precisar “andar” pelo vetor, com um bom e velho for. for(int i=0;i<=3;i++) System.out.println(vet3[i]); Compilou? Ok, né? Executou? Deu erro, né? Mensagem? Anda, olha lá. Apareceu isso? Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3 at Vetor.main(Vetor.java:18) Bom, aprenda. Quando aparecer java.lang.ArrayIndexOutOfBoundsException é porque estourou o tamanho de um vetor. Você está tentando acessar posições acima ou abaixo do que existe no vetor. Neste caso, olhe lá na mensagem, você está tentando acessar a posição 3 (vetor de tamanho 3, vai de 0 a 2, lembra? Até lembra né? Mas não prestou atenção no for, não foi?). Vamos, modifique-o. Ou tire o igual (do <=), ou vá até 2. Ah, o vetor, em Java, tem um atributo tamanho: length (assim mesmo, sem parênteses, porque ele é atributo e não método... sim, sim, tarefa de mostrar a diferença fica com Tio Jack, em POO). Veja como é o comando: System.out.println(“Tamanho do vetor: ”+ vet3.length); Então seu for poderia ficar assim: for(int i=0;i<vet3.length;i++) System.out.println(vet3[i]); Mas voltemos aos vetores vet e vet2. Qual o tamanho de vet, olhando para a declaração e inicialização dele? Cinco, né? E o tamanho de vet2? Hipótese: será que seu tamanho é equivalente à quantidade de valores com o qual foi inicializado? Hum! Que teste te daria esta resposta rapidamente? Pense: quantos valores foram colocados em vet2? Cinco! Se eu acessar vet2 na posição 4, deve aparecer a letra E. Testando: System.out.println(vet2[4]); Resultado: E E se tentarmos vet2 na posição 5? Se não estourar, é porque nossa hipótese está furada.

Testando: System.out.println(vet2[5]); resultado: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: (^5) at Vetor.main(Vetor.java:20)

Pelo visto, estourou. Bom, é claro que se eu mandasse escrever o tamanho de vet2 já teria esta resposta mais cedo... System.out.println(“Tamanho de vet2: ”+ vet2.length); E pra fechar, vamos voltar a brincar com os endereços dos vetores: System.out.println("Endereço de vet: "+vet); System.out.println("Endereço de vet2: "+vet2); System.out.println("Endereço de vet3: "+vet3); Mande imprimir vet e vet2, só pra confirmar que eles estão com valores diferentes. Aproveitando o que acabei de aprender: System.out.println(vet); System.out.println(vet2); Se no seu caso eles não estão diferentes, modifique-os para que fiquem assim. Agora o teste que você, como bom curioso, já fez: vet = vet2; Vai dar pau, né? Não se anime, não deu. Agora, o grande teste: System.out.println(vet); System.out.println(vet2); Os mesmos valores para os dois vetores? Modifique um dos vetores e imprima-os. Ahn? Ahn? Agora modifique o outro e faça a mesma coisa. Ahn? Ahn?