Ola, sou iniciante no Java ainda, e to seguindo os tutoriais e documentos do Java Tutorials, baixei tudu e to lendo em sequencia, bunitim...
Resolvi da uma brincada e um treinada ao mesmo tempo, treinando um pokim de preenchimento de arrays com for e mostrar elas dpois, olhem o código:
public class TreinoForEArrays {
public static void main(String[] args){
System.out.println("Teste de arrays, for e classes");
System.out.println("Array 1: Numeros de 1 a 15");
Array array1 = new Array(1,15);
int valorTotalArrayUm = array1.mostraTudo();
System.out.println("\nO valor total da array é: "+valorTotalArrayUm);
System.out.println("\nArray 2: Numeros de 16 a 30");
Array array2 = new Array(16 ,30);
int valorTotalArrayDois = array2.mostraTudo();
System.out.println("\nO valor total da array é: "+valorTotalArrayDois);
}
}
class Array {
int numInicial;
int numFinal;
int[] fileira;
int valor = 0;
public Array(int inicial, int ultimo) {
numInicial = inicial;
numFinal = ultimo;
fileira = new int[numFinal-numInicial+1];
for(int i=0;numInicial<=numFinal;i++) {
fileira[i] = numInicial++;
}
}
int mostraTudo() {
System.out.println("Os valores na array são:");
for(int j=0;j<numFinal-numInicial+1;j++) {
System.out.println("Valor no index "+j+": "+fileira[j]);
valor += fileira[j];
}
return valor;
}
}
Simplesmente não funciona, ele compila certinho, sem nenhum erro, mais na hora da roda, ele só mosta o seguinte:
Teste de arrays, for e classes
Array 1: Numeros de 1 a 15
Os valores na array são:
O valor total da array é: 0
Array 2: Numeros de 16 a 30
Os valores na array são:
O valor total da array é: 0
Não mostra a array... e pelo que parece ela nem é preenchida, pois o valor continua 0...
-------------------------------
Porééém, se adicionar System.out.println(fileira); ao constructor Array dentro do loop for após fileira = numInicial++; quando roda o programa retorna assim:
Teste de arrays, for e classes
Array 1: Numeros de 1 a 15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Os valores na array são:
O valor total da array é: 0
Array 2: Numeros de 16 a 30
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Os valores na array são:
O valor total da array é: 0
Significa que ele preenche a array, mais depois ele não consegue acessa-la na função mostraTudo()..., mais não deveria ter dado erro no compilamento intao??
alguém ajuda...
++++++++++++++++++EDIT+++++++++++++++++++++
Descobri o problema, mais não a solução...
a função mostraTudo() não está acessando nenhum tipo de variavel...
se colocar int seila = numFinal + numInicial;
e depois System.out.println(seila);
ele vai resultar em 0... como se não reconhecesse as variaveis fora do metodo...
Pergunta
Scripter
Ola, sou iniciante no Java ainda, e to seguindo os tutoriais e documentos do Java Tutorials, baixei tudu e to lendo em sequencia, bunitim...
Resolvi da uma brincada e um treinada ao mesmo tempo, treinando um pokim de preenchimento de arrays com for e mostrar elas dpois, olhem o código:
Simplesmente não funciona, ele compila certinho, sem nenhum erro, mais na hora da roda, ele só mosta o seguinte:
Teste de arrays, for e classes
Array 1: Numeros de 1 a 15
Os valores na array são:
O valor total da array é: 0
Array 2: Numeros de 16 a 30
Os valores na array são:
O valor total da array é: 0
Não mostra a array... e pelo que parece ela nem é preenchida, pois o valor continua 0...
-------------------------------
Porééém, se adicionar System.out.println(fileira); ao constructor Array dentro do loop for após fileira = numInicial++; quando roda o programa retorna assim:
Teste de arrays, for e classes
Array 1: Numeros de 1 a 15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Os valores na array são:
O valor total da array é: 0
Array 2: Numeros de 16 a 30
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Os valores na array são:
O valor total da array é: 0
Significa que ele preenche a array, mais depois ele não consegue acessa-la na função mostraTudo()..., mais não deveria ter dado erro no compilamento intao??
alguém ajuda...
++++++++++++++++++EDIT+++++++++++++++++++++
Descobri o problema, mais não a solução...
a função mostraTudo() não está acessando nenhum tipo de variavel...
se colocar int seila = numFinal + numInicial;
e depois System.out.println(seila);
ele vai resultar em 0... como se não reconhecesse as variaveis fora do metodo...
Editado por ScripterLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.