Trabalhando com Array

5 respostas
M

Olá, amigos. Eu estou começando a programar em java e tenho uma dúvida, que pra mim é muito grande.

Eu gostaria de uma ajuda no seguinte:

Eu tenho um Array de códigos, tipo: A []= {1, 2, 3, 4, 5, 6}

E um outro com valores floar, tipoo: B []= {1.25f, 2.3f, 1,.8f, 6.9f, 7.3f, 3.75f}

Só que agora, um usuário vai fornecer valores referentes para dentro de outro Array, tipo cC[]= {3, 4, 5, 6, 1, 2}.

Aí vem a minha dúvida. Como faço para que os valores aos quais o usário forneceu refiran-se aos slots de A que estão em sequência aos
valores de B e monte com isso um outro vetor, tipo: D[]={1.8f, 6.9f, 7.3f, 3.75f, 1.25f, 2.3f} para com isso criar uma soma desses valores e assim seguir com meu programa.

Agradeço a atenção.

5 Respostas

ViniGodoy

Voc6e pode fazer:

int valor = A[B[cC]];

Sem problemas.

M

ViniGodoy

ficaria assim?

for(i=0;i<=5;i++)
    {
   Float [] D= new Float [12];

    D[i]= A[B[cC]];
   
    }
          
    está havendo um pequeno problema. Acho que é conflito entre A que é inteiro e B que float.

Como faço?

M

ViniGodoy:
Voc6e pode fazer:

int valor = A[B[cC]];

Sem problemas.

ficaria assim?

for(i=0;i<=5;i++)

{

Float [] D= new Float [6];

D[i]= A[B[cC]];

}

está havendo um pequeno problema. Acho que é conflito entre A que é inteiro e B que float.
Como faço?

ViniGodoy

É que D tem que ser com os valores de B, não de A.

Então fica assim:

D[i]= B[A[cC]];

No seu caso não vai ser necessário, mas se você precisar remover a parte decimal (não arrendondar, remover mesmo) e transformar num int, vc faz assim:

float umFloat = 1.45;
int umInt = (int)umFloat;

Para mais informações sobre esse tipo de operação, veja também os método Math.floor, Math.ceil e Math.round.

T

Aqui mais um post para minha campanha “não use float, use double”

Quando aprendi C o livro dos srs. Kernighan e Ritchie dizia explicitamente: prefira usar sempre double. E explicava direitinho por quê. E a linguagem foi feita de forma que é muito mais fácil usar double que float.

Quando o sr. James Gosling inventou o Java (com base no C e no C++) ele disse: Kerninghan e Ritchie estão certos, e não vou mudar o que fizeram. E em Java é muito mais fácil usar double que float.

E é muito mais fácil usar double que float de propósito, porque é muito mais difícil você cometer erros com double que com float. Se você souber o que está fazendo, até dá para fazer contas com dinheiro com double, mas é impossível fazê-las com float sem ter problemas muito graves de precisão.

Por favor, professores, ensinem a seus alunos: float só em último caso, se você souber muito bem o que está fazendo. Em 99% do tempo, quando se precisa de um valor de ponto flutuante, usem double.

Criado 6 de março de 2008
Ultima resposta 6 de mar. de 2008
Respostas 5
Participantes 3