Estou aprendendo java por conta propria e peguei alguns tutoriais na net, um deles fala sobre arrays, mas eu nao consegui entender direito o conceito de array e como mota-lo essas coisas…emfim alguem poderia me dar uma breve aula de array por favor!?
bom assim se monta um array
int arrayTeste[] // vc declara a refencia pr o array
arrayTeste = new int[10]; //alocou dinamicamente o array dez posicoes do tipo inteiro.
o array é sao varias posicoes seguidas na memoria eles possuem o mesmo tipo de dados. sao estaticos, vc tem q declara o seu tamanho. mas em java existem outras estruturas dinamicas como Vector, arrayList e outros q podem crescer dinamicamente. nao precisa especificar o tamanho.
bom é mais ou menos isso, com tempo vc vai entendedo melhor.
qualquer duvida é só postar. :lol:
G
Guilherme_MelloPJ
Estevam, um array não é nada mais do que uma forma de armazenar objetos!
O tamanho de um array é determinado quando o array é criado (em tempo de execução).
Após criar um array, sua estrutura é de tamanho fixo.
Deve-se usar arrays quando:
[list][*:4bf74ae990] Você precisa saber de antemão o número máximo de elementos que será armazenado no array…
[*:4bf74ae990] Você quer que apenas um tipo específico esteja contido na coleção.
[/list]
Alguns dos principais métodos da classe Array:
[list][:4bf74ae990] equals()
[:4bf74ae990] fill()
[:4bf74ae990] sort()
[:4bf74ae990] binarySearch()
[*:4bf74ae990] asList()
[/list]
PS: Um array pode guardar tipos primitivos, mas seu tamanho não pode ser modificado, uma vez que tenha sido criado!
E
EstevamPJ
HMMM valeu pessoal! deu pra ter uma noção da coisa… olhem esse exemplo da apostila:
class Exemplo {
publicstaticvoidmain(Stringarg[]){intA[]=newint[3];A[0]=50;A[1]=100;A[2]=150;System.out.println("Tamanho do vetor = "+A.length);
MUITO BEM, o que eu nao entendi desse exemplo (depois da explicação de vocês) é: O que é .length ? e apartir do FOR eu nao entendi mais nada hehe qq é o incremento de CONTA? esse ++ e o que está no system.out.println eu tambem nao intendi A[conta] … por favor me ajudem denovo!
Grato
G
Guilherme_MelloPJ
“Estevam”:
HMMM valeu pessoal! deu pra ter uma noção da coisa… olhem esse exemplo da apostila:
class Exemplo {
publicstaticvoidmain(Stringarg[]){intA[]=newint[3];A[0]=50;A[1]=100;A[2]=150;System.out.println("Tamanho do vetor = "+A.length);
MUITO BEM, o que eu nao entendi desse exemplo (depois da explicação de vocês) é: O que é .length ? e apartir do FOR eu nao entendi mais nada hehe qq é o incremento de CONTA? esse ++ e o que está no system.out.println eu tambem nao intendi A[conta] … por favor me ajudem denovo!
Grato
Length retorna o tamanho do seu array…
o for é apenas a estrutura de repetição:
for(conta=0; conta< A.length ; conta++)
para conta =0, conta menor que o tamanho do seu array, incrementa a variável de controle conta
apenas imprime a variável conta como sendo o índice e o valor referente ao seu índice no array…
E
EstevamPJ
entendi quase tudo! hehe sóe stou com duvida em um negocio, se quando declara CONTA “int conta;” o valor inicial é 0 por que que tem que dizer “for(conta =0 ; …” e eu poderia substituir o A.legth do comando FOR por 3? e o que o incremento faz?
nao entendi esse negocio de menu :sad:
e por que 2 valores [][]? é um dentro do outro?
eu poderia usar isso pra fazer coordenadas [x][y] ?
D
danielbertiniPJ
Funciona como um array bidimensional… na verdade vc pode utilizar quantas dimensoes quiser… eh um recurso sempre muito util.
Inclusive vc pode utilizar o recurso de lenght para as dimensoes individualmente, por ex:
vetor[x][y];
vetor.lenght… ou vetor[x].lenght e obter o lenght da segunda dimensao…
Abraco!!!
Daniel Bertini
nerd.com.br
peca suas pizzas ou alugue filmes online…
D
danielbertiniPJ
Vale a pena pesquisar para saber qual o melhor recurso a ser utilizado pois podem existir diferencas de performance muito grandes… portanto muita atencao na utilizacao de arrays com relacao a quantidade de dados a serem tratados. Procure saber como a JVM trata o armazenamento disso em memoria em todos os casos.
E
EstevamPJ
o qq é JVM?
D
danielbertiniPJ
Java Virtual Machine… procure tutoriais a respeito pois eh meio complicado de estar explicando isso aqui;
G
Guilherme_MelloPJ
Estevam, procure por apostilas, tutoriais para iniciantes…
com certeza nelas vc vai encontrar suas dúvidas!
Ok!?
F
freakshow1PJ
Aproveitando topico sobre arrays eu queria saber se tem como descobrir o numero de inervalos usado em um array de inteiros, por exemplo…
int numeros[] = new int[100]
mas eu usei somente 30 intervalos, tem algum meio de contar isso? tipo algum .lenght, ou nao daria pra iniciar esse array todo como “null” e criar uma funcao para contar o intervalo? tipo
while (numero[i]!=null){
cont++;
i++;
}
D
danielbertiniPJ
Ola.
Por default a JVM inicia a alocacao de memoria com padroes de null ou 0 (se nao me angano) dependendo do tipo de variavel que for definido… aconselho dar uma estudada melhor nos tutoriais para saber mais a respeito pois são coisas muito importantes e dificeis de estar explicando aqui ja que envolve muitos aspectos e padroes da linguagem.
Abraco
Danie.
--------------- > visite www.nerd.com.br
E
EmerzoomPJ
E ae Estevam,tudo firmeza?!
Como pude notar,vc é um cara com muitas dúvidas sobre Java…a galera aqui tem muitos conceitos pra te ajudar,como eu tb tenho e até tenho uma indicação de bibliografia bem útil pra vc aprender melhor e até desenvolver mais ainda seus conhecimentos…
procure o livro:
JAVA Como programar,dos irmãos Deitel
Seu conteúdo tem tudo que vc precisa saber sobre JAVA,como iniciante e ainda tem Orientação a Objetos…vc vai gostar…