Array Bidimensional string e int

10 respostas
I

Pessoal eu estou com uma duvida e gostaria muito de uma luz… eu tenho que fazer um codigo usando Array Bidimensional de String para definir o resultados de alguns jogos de futebol.
Estou com dificuldade em saber como posso declarar as arrays porque no meu entendimento uma parte deve ser String mas a outra deve ser Int.
alguem pode me dar uma dica de como posso fazer isso? andei olhando os metodos Integer.parseInt mas ainda nao sei como aplicar no meu caso.

String[][] arr =
{ {“Germany”, “2”, “Scotland”, “1”},
{“Poland”, “2”, “Germany”, “0”},
{“Germany”, “1”, “Ireland”, “1”},
{“Poland”, “2”, “Scotland”, “2”},
{“Scotland”, “1”, “Ireland”, “0”},
{“Ireland”, “1”, “Poland”, “1”},
{“Ireland”, “1”, “Scotland”, “1”},
{“Germany”, “3”, “Poland”, “1”},
{“Scotland”, “2”, “Germany”, “3”},
{“Ireland”, “1”, “Germany”, “0”},
{“Scotland”, “2”, “Poland”, “2”},
{“Poland”, “2”, “Ireland”, “1”} };

o codigo que estou escrevendo tem que ser baseado nestes jogos! sendo que cada resultado positivo da 3 pontos, empates da 1 ponto e derrota nao da nenhum ponto.

na minha logica eu acho que seria uma array de [12][4].

mas estou perdido!

obrigado pela ajuda!

10 Respostas

R

O array todo só tem um tipo, ou vc usa String ou int.
Ou use outro tipo de estrutura pra fazer oq vc quer.

W

Por que um teria que ser int?

D

Vc pode declarar como Object[][] e usar String e Integer;

I

porque tem os nomes dos países e os gols feitos em cada jogo!

W

mas vc pode salvar um número como string horas, “7” é uma string e se precisar fazer conta bastar utilizar int.parse. exemplo

string string_sete = "7";
   string string_dois = "2";
  int inteiro_nove = int.Parse(string_sete) + int.Parse(string_dois);
Console.WriteLine(inteiro_nove);
R

Por um acaso é trabalho de curso/faculdade ? Caso não seja, porque usar array quando você pode usar objetos ricos ?

class Jogo{
    String timeCasa;
    int placarTimeCasa;
    String timeVisitante;
    int placarTimeVisitante;
}
J

Eita… profissional é outro nivel. eu teria feito do mesmo jeito que @Wilton_Garcia indicou ou que o @diego12 mostrou.

J

Usando um objeto de jogo, que guarda as informações sobre um jogo especifico fica mais fácil.
Exemplo:

public class aa {
	public static void main(String[] args) {
		Jogo[] placarGeral = new Jogo[]{
				new Jogo("Germany", 2, "Scotland", 1),
				new Jogo("Poland", 2, "Germany", 0),
				new Jogo("Germany", 1, "Ireland", 1)
				};
		System.out.println("o jogo da linha 1 do vetor placarGeral é: "
				+ placarGeral[1].time1+" fez "+ placarGeral[1].gols1+ " gols"
				+ " e "
				+ placarGeral[1].time2+" fez "+ placarGeral[1].gols2+ " gols");
		
	}
}
class Jogo{
	String time1, time2;
	int gols1, gols2;
	public Jogo(String time1, int gols1, String time2, int gols2) {
		this.time1 = time1;
		this.gols1 = gols1;
		this.time2 = time2;
		this.gols2 = gols2;
	}
}
J

Muito bom, nunca iria pensar isso, aqui esta exemplificado

public class aa {
	public static void main(String[] args) {
		Object[][] placarGeral = new Object[][]{
				{"Germany", 2, "Scotland", 1},
				{"Poland", 2, "Germany", 0},
				{"Germany", 1, "Ireland", 1}
				};
		System.out.println("o jogo da linha 1 do vetor placarGeral é: "
				+ placarGeral[1][0]+" fez "+ placarGeral[1][1]+ " gols"
				+ " e "
				+ placarGeral[1][2]+" fez "+ placarGeral[1][3]+ " gols");
		
	}
}
W

Poderia ter indicado do outro jeito, mas uma coisa que aprendi trabalhando na indústria de TI foi, quanto mais simples melhor, sempre faça do jeito mais simples possível.

Criado 4 de dezembro de 2017
Ultima resposta 18 de dez. de 2017
Respostas 10
Participantes 7