[RESOLVIDO] Array

Eu já tentei estudar sobre as harrays, mas nunca entendi muito bem.
Alguém tem algum video, livro, informação em geral sobre este tema.
Supondo que eu nunca mexi com harrays.

Att. Gustavo

Fala Gustavo, tudo certo?

No começo é uma desgraça mesmo, eu sempre me perdi, mas conforme o tempo passa, você vê que é mais facil que andar pra trás!!

Há pessoas que indicam vídeos, como os do Curso em Vídeo, ou da Loiane… Há vários exemplos disso na internet, sério, vários e úteis.

Vamos usar um exemplo básico:

ArrayList lista = new ArrayList(); 
//esse é um exemplo bem básico de lista
//e provavelmente o que vc mais vai encontrar

para adicionar itens nessa lista vc pode fazer:

lista.add("Gustavo"); //String
lista.add("Abner"); //String
lista.add("GUJ"); //String
lista.add(800); //Integer/int

Nós temos 4 objetos nessa lista, certo? Você pode reparar que há “números” e “letras” nestes objetos, isso acontece porquê nós não definimos um tipo exato para nossa lista, então vamos “PENSAR” que ela aceita tudo.

Pra você ler essa lista (lembrando que isso é um exemplo básico)

vc pode fazer isso:

System.out.println(lista);

Nesse caso vai imprimir como se fosse um Array:

[Gustavo, Abner, GUJ, 800]

Mas o jeito correto para se ler uma lista é assim:

Você faz um laço de repetição (for ou while)
e faz a lógica, exemplo:

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

Basicamente isso significa que enquanto o i for que 5, ele vai continuar fazendo alguma coisa.

Mas no nosso caso, isso não é interessante, até pq pode acontecer da nossa lista ter desde 1 item, até X itens, nós podemos até perder a conta de quantos itens tem…

Então pra isso nós vamos fazer:

    for (int i = 0; i < lista.size(); i++) {
        System.out.println(lista.get(i));
    }

enquanto a variável i for MENOR que o tamanho da lista, vamos mostrar no console os dados “cadastrados” na nossa lista.

Enfim… esse é um exemplo básico do básico, não há muito segredo…

Você pode encontrar algo como:

ArrayList<String>
ArrayList<Integer>
ArrayList<AlgumaClasse>

Lembre-se: na programação VOCÊ é o limite, se você decidir que vai afirmar que a terra é plana, você pode fazer de tudo (além de estudar muito kkkkk) até descobrir esse feito. Então por ora é isso. Não limite-se ao básico, todo dia é dia de aprender!!

Boa sorte nos estudos :smiley:


https://alvinalexander.com/java/java-string-array-reference-java-5-for-loop-syntax

https://www.w3schools.com/java/java_arraylist.asp

3 curtidas

Array pode ser assim tb:

int[] numArray = new int[10]; // cria um array de inteiros com 10 posições
2 curtidas

@Lucas_Camara @rodriguesabner Muito obrigado aos dois, realmente percebi mais em relação as Arrays. Agora como toda a programação, só falta estudar. Obrigado!

Array (ou o povo traduz as vezes pra portugues como “arranjo” ou “vetor”) é uma sequência de elementos.

Por exemplo imagina que você quer armazenar uma lista de 3 notas de prova. Então você pode criar um array pra armazenar esses 3 valores:

float[] minhasNotas = new float[3]; // minhasNotas eh um array de 3 valores
                                    // e cada um dele é um valor de ponto flutuante

Então você acessa os elementos usando esse esquema de [indice], onde o indice é a posição no array. A posição começa no indice zero, ou seja, a primeira nota vai ser a nota da posição zero.

minhasNotas[0] = 8.0f; // preenchendo a nota da primeira prova no array

Assim, preenchendo as demais notas:

minhasNotas[1] = 6.5f;
minhasNotas[2] = 9.2f; // ultima nota

Enfim, esse array é como se você tivesse 3 variáveis do tipo float separadas.

Porém, ele tem uma vantagem. Vamos implementar um algoritmo de média para demonstrar isso:

public static float calculaMedia(float[] notas) {
	// percorremos todos os elementos do array e somamos eles
	float soma = 0.0f;
	
	// a variavel i armazena o indice atual
	for (int i = 0; i < notas.length; i++) {
		soma += notas[i];
	}
	
	// dividimos a soma dos valores pelo numero de valores para obter a media
	return soma / (float)notas.length;
}

Como da pra ver o algoritmo de calculo de média é independente do tamanho do array, ou seja, você pode passar um array de qualquer tamanho que o calculo de media vai funcionar de igual forma.

O tamanho só vai ter que ser maior que zero.


Codigo completo do exemplo: [https://ideone.com/f6ZIf4]

Obrigado sobre toda a informação em relação as Arrays, realmente já estou a entender mais.
Uma questão talvez boba, porém a tenho, o que significa “+=”? “soma += notas[i];”

É só uma abreviação de

soma = soma + notas[i];

Ou seja, com += você pega o valor que já existe em soma e incrementa o outro valor.

2 curtidas