[RESOLVIDO]Solicitar dados em um vetor bidimensional?

Tenho o seguinte problema:

3 - Escreva um programa que declare um vetor bidimensional do tipo String, com 10, 2 elementos. O programa deverá solicitar que o usuário digite 10 Nomes e 10 Telefones que serão armazenados respectivamente no vetor. O programa deverá então permitir que o usuário escolha um nome para ser econtrado no vetor. Encontrando o nome o programa deverá dizer em índice onde o nome se encontra.

Como eu solicito dados aos usuarios com o vetor bidimensional??
Como vou fazer ele pesquisar pelo nome do usuario e retornar o indice??

Até agora desenvolvi isso, e nem sei se está certo…

import java.util.Scanner;

public class Ex3 {

public static void main(String[] args) {

    System.out.println("Digite 10 nomes e 10 telefones e Consulte qualquer nome depois");
    
String [][]vetor = new String[10][2];
int x;

Scanner s = new Scanner(System.in);

for (x=0;x<=9;x++){
    System.out.printf("Digite o %dº nome: ", x+1);
    vetor[x][x] = s.nextLine();
    System.out.printf("Digite o numero de telefone:");
    vetor[x][x] = s.nextLine();
}
    

}

}

=]]

vc vai fazer um for dentro do outro…

for (int j=0; j<2;j++) { for (int i=0;<i<10;i++) { //faz leitura na posição [i][j] } }

Já ouviu falar da “tabela da verdade” ou “teste de mesa” ?
Nesse caso seria assim:
i=0, j=0 -> acrescenta
i=1;j=0 -> acrescenta
i=2; j=0 -> acrescenta
i=3; j=0 -> acrescenta
i=4; j=0 -> acrescenta
.
.
i=9;j=0 -> acrescenta

Então o i recebe 0, e o j é incrementado
i=0, j=1 -> acrescenta
i=1;j=1 -> acrescenta
i=2; j=1 -> acrescenta
i=3; j=1 -> acrescenta
i=4; j=1 -> acrescenta
.
.
i=9;j=1 -> acrescenta


ACABA

[quote=pedroroxd]vc vai fazer um for dentro do outro…

for (int j=0; j<2;j++) { for (int i=0;<i<10;i++) { //faz leitura na posição [i][j] } }

Já ouviu falar da “tabela da verdade” ou “teste de mesa” ?
Nesse caso seria assim:
i=0, j=0 -> acrescenta
i=1;j=0 -> acrescenta
i=2; j=0 -> acrescenta
i=3; j=0 -> acrescenta
i=4; j=0 -> acrescenta
.
.
i=9;j=0 -> acrescenta

Então o i recebe 0, e o j é incrementado
i=0, j=1 -> acrescenta
i=1;j=1 -> acrescenta
i=2; j=1 -> acrescenta
i=3; j=1 -> acrescenta
i=4; j=1 -> acrescenta
.
.
i=9;j=1 -> acrescenta


ACABA
[/quote]

Cara, saquei… Valew mesmo brother!!!

Abração!!! =]]]]]

Por nada…
É o mesmo conceito de matriz que agente vê em algorítimo no início… Um for dentro do outro, para preencher…
Dentro de onde ta o “//” do meu post acima /\ é onde vc vai fazer a leitura do que o usuário digitou e armazenar a posicão [i][j].
Dentro também vc vai precisar de um if: se o j valer 1, ele vai começar a ler o telefone, e não o nome (que é quando j=0)

Lembra de criar só uma instancia do Scanner, lá em cima (e não no for) para evitar o uso de memória

Depois pesquisar a posição, vai ter 2 for também, e um if dentro do segundo +/- assim:

if (meuvetor[i][j].equals(nomedigitadopelousuario) { //imprime a posição i, e a j. Seria legal imprimir o telefone também. i,0 é o nome e i,1 é o telefone }
Bons estudos, tenta fazer ae, mesmo se tiver dificuldade, tenta ao máximo, depois posta suas dúvidas!