Arrays
Arrays
Introdu%o
2
Imaginemos que queiramos trabalhar com as notas de alunos Su ondo que cada aluno tenha cinco notas! odemos criar cinco "ari#"eis do ti o int ara arma$enar as notas de um aluno.
Arrays
Introdu%o
3
Problemas&
Se o n'mero de "ari#"eis for muito grande( Se no for oss)"el saber anteci adamente com quantos alunos ou notas o rograma "ai trabalhar(
*ma solu%o ara esse roblema oderia ser a utili$a%o de uma estrutura de dados
Arrays
Introdu%o
4
*ma estrutura de dados muito comum ara esse ti o de situa%o so os arrays *m array , uma estrutura de dados que define uma cole%o homognea de um n'mero fixo de elementos *m array ode ser unidimensional -tamb,m chamado de vetor.! bidimensional -tamb,m chamado de matriz. ou multidimensional.
/etores
/etores
1efini%o
6
/ari#"el do ti o inteiro
/etores
9i os
7
?A/A
8
/etores
1eclara%o
A declara%o da "ari#"el no cria o "etor em si! mas a enas a "ari#"el que "ai acessar o "etor
3 y s
?A/A
9
/etores
Instancia%o
:
:
:
6
:
7
fals e
:
fals e
6
9amanho do "etor
null
:
/alor default
?A/A
10
/etores
Acesso
Inicia em $ero-:.
3
7
:
5
7
?A/A
11
/etores
1eclara%o e Instancia%o
7
:
2
6
4
7
0u em linhas se aradas
String a@ AB a C ne> String@ A F<AHI=! <1JK=G
<AHI =
:
<1JK =
6
?A/A
12
/etores
9amanho
7
:
2
6
4
7
?A/A
13
/etores
Percorrendo
Para im rimir os "alores de um "etor! , necess#rio ercorrer os elementos usando um comando for
int 3@ A C F 7! 2! 4 GB for -int i C :B i M 3.lengthB iNN. F System.out. rintln- 3@ i A .B G
7
:
2
6
4
7
?A/A
14
/etores
Kun%Des
INN
15
/etores
1eclara%o
ti o nome1oArray@tamanhoAB
int nums@7AB double notas@4:AB
J3em los&
0bs.& o tamanho do array fornecido na declara%o de"e ser uma constante inteira maior que $ero.
INN
16
/etores
Iniciali$a%o
J3em los&
int nums@A C F7!2!O!4!6GB int nums@6:A C F:GB
INN
17
/etores
9amanho
7
:
2
6
4
7
18
Matri$es
?A/A
19
Matri$es
1eclara%o e Instancia%o
?A/A
20
Matri$es
Re resenta%o e Acesso
:
:
2
6
:
7
3 6
:
:
:
6
:
7
?A/A
21
Matri$es
Qinhas e Iolunas
:
:
:
6
:
7
:
2
3 6
:
:
:
6
INN
22
Matri$es
1eclara%o e Instancia%o
ti o nome1oArray@tam6A@tam7A
J3em los&
int nums@7A@4AB RR7 lin! 4 col double notas@4:A@4:AB RR4: linhas e 4: colunas
INN
23
Matri$es
1eclara%o e Instancia%o
J3em los&
int nums@7A@2A C FFE!4!2G!F4!7!OGGB int nums@7A@2A C FE!4!2!4!7!OGB int nums@7A@2A C FFE!4G!F4GGB
J3erc)cios
24
Jscre"a um algoritmo ara e3ibir a m,dia de "alores inteiros resentes em um "etor! reenchido or um usu#rio Jscre"a um algoritmo ara reencher um "etor com nomes de essoas -"ia teclado.! orden#8lo e e3ib)8lo Jscre"a um algoritmo ara e3ibir a matri$ soma de duas outras Jscre"a um algoritmo ara e3ibir a matri$ roduto de duas outras