Boa tarde Leonardo Augusto.
Primeiro voce pode declarar esta matriz como Object, que permite voce inserir tanto valores Strings quanto Inteiros.
Segundo você teria, a meu ver, que fazer dois loops "for" aninhados, seu código ficaria assim:
........
public static void main(String arg[])
{
Object matCB[][]= new Object[20][8]; // Inclui-se o nome do time
int resultado;
final String[] campos = {"Pontos","Vitórias","Empates","Derrotas","GolsPro","GolsContra","SaldoGols"};
for (int i =0; i < 20; i++){ // i < 20 é igual i <= 19
matCB[i][0] = JOptionPane.showInputDialog(null, "Entre com o nome do time");
for (int j = 1; j <= 7; j++){ // Aqui sim começa no 1 e termina com j <= 7
matCB[i][j] = JOptionPane.showInputDialog(null, "Entre com "+campos[j]+" do time");
}
}
}
O detalhe é que por outro lado, se isto for um exercício, em que o professor te peça para trabalhar com matrizes, lhe traria um trabalho danado, visto que há vários inconvenientes no código acima, senão vejamos.
1º) Voce não pode entrar com todos os resultados de uma única vez, visto se tratar de um campeonato, onde os valores de cada time tem que ser inseridos jogo após jogo.
2º) Imagine o trabalho danado que te trará escrevendo códigos e implementações para inserir os valores, além do que o motivo do terceiro quesito a seguir:
3º) Qual índice da matriz voce inseriu o Time do Vasco, e qual o índice da segunda dimensão é o seu número de vitórias.
Digo isto pois, durante a implementação do seu código, voce poderá se perder, e com certeza, segundo a lei de Murphy, voce irá se perder.
O mais óbvio para isto, seria voce criar uma Classe Equipe, cujos métodos tem os nomes dos campos, e ainda assim, dentro dessa classe voce pode implementar métodos que farão os cálculos automaticamente no momento que voce, por exemplo, adiciona uma vitória.
Vamos a Classe
public class Equipe {
private String nome = null;
private Integer vitorias = 0, empates = 0, derrotas = 0;
private Integer golspro = 0, golscontra = 0;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public Integer getPontos() {
return (vitorias * 3) + empates;
}
public Integer getVitorias() {
return vitorias;
}
public void setVitorias(Integer vitorias) {
this.vitorias = vitorias;
}
public void addVitoria() {
this.vitorias++;
}
public Integer getEmpates() {
return empates;
}
public void setEmpates(Integer empates) {
this.empates = empates;
}
public void addEmpates() {
this.empates++;
}
public Integer getDerrotas() {
return derrotas;
}
public void setDerrotas(Integer derrotas) {
this.derrotas = derrotas;
}
public void addDerrotas() {
this.derrotas++;
}
public Integer getGolsPro() {
return golspro;
}
public void setGolsPro(Integer golspro) {
this.golspro = golspro;
}
public void addGolsPro(Integer golspro) {
this.golspro += golspro;
}
public Integer getGolsContra() {
return golscontra;
}
public void setGolsContra(Integer golscontra) {
this.golscontra = golscontra;
}
public void addGolsContra(Integer golscontra) {
this.golscontra += golscontra;
}
public Integer getSaldoGols() {
return golspro - golscontra;
}
}
Agora veja como ficou fácil a implementação do código:
public static void main(String[] args) {
Equipe vasco = new Equipe();
vasco.setNome("Vasco");
vasco.setVitorias(17);
vasco.setEmpates(10);
vasco.setDerrotas(7);
vasco.addGolsPro(51);
vasco.addGolsContra(37);
visualizarEquipe(vasco);
}
public static void visualizarEquipe(Equipe eq) {
System.out.println("Time: "+eq.getNome());
System.out.println("Pontos = "+eq.getPontos());
System.out.println("Vitórias = "+eq.getVitorias());
System.out.println("Empates = "+eq.getEmpates());
System.out.println("Derrotas = "+eq.getDerrotas());
System.out.println("Vitórias = "+eq.getVitorias());
System.out.println("Gols pró = "+eq.getGolsPro());
System.out.println("Gols contra = "+eq.getGolsContra());
System.out.println("Saldo de gols = "+eq.getSaldoGols());
}
voce ainda pode fazer assim:
public static void main(String[] args) {
Equipe vasco = new Equipe();
vasco.setNome("Vasco");
vasco.setVitorias(17);
vasco.setEmpates(10);
vasco.setDerrotas(7);
vasco.addGolsPro(51);
vasco.addGolsContra(37);
visualizarEquipe(vasco);
// Acrescentando mais uma vitória ao Vasco
vasco.addVitoria();
vasco.addGolsPro(3);
vasco.addGolsContra(1);
visualizarEquipe(vasco);
}
public static void visualizarEquipe(Equipe eq) {
System.out.println("Time: "+eq.getNome());
System.out.println("Pontos = "+eq.getPontos());
System.out.println("Vitórias = "+eq.getVitorias());
System.out.println("Empates = "+eq.getEmpates());
System.out.println("Derrotas = "+eq.getDerrotas());
System.out.println("Vitórias = "+eq.getVitorias());
System.out.println("Gols pró = "+eq.getGolsPro());
System.out.println("Gols contra = "+eq.getGolsContra());
System.out.println("Saldo de gols = "+eq.getSaldoGols());
}
Veja como ficou tão fácil a sua implementação com a orientação a objetos. :idea: A Linguagem Java, por ser totalmente orientada o objetos, te oferece muito, mas muito mais recursos do que voce imagina.
Repare que coloquei o atributo nome na classe equipe, porém voce pode, como mostrado no código acima, definir também as instâncias da classe Equipe, com os nomes dos times.
Um abraço.