Arrays

Desculpem, é o segundo tópico que estou postando, mas sou principiante em Java.
Se alguém puder me ajudar, quero adicionar uma String recebida pelo teclado (Scanner) em um array, de forma que eu possa checar caractere por caractere desse array pra comparar com dados que estarão em uma pilha. Bom, se alguém puder me ajudar, só preciso saber de duas coisas: Como armazenar a String recebida no Array e como comparar caractere por caractere.

[code]import java.util.Scanner;

public class Bororoska {

public static void main(String[] args){
	
	String dados[];
	String expressao;
	boolean valido = true;
	
	Scanner expr = new Scanner(System.in);
	expressao = expr.nextLine();
	
	
	
}

}[/code]

Obrigado!

  1. Declare o tamanho do seu array;
  2. Leia e atribua o resultado ao array:

[code]
import java.util.Scanner;

public class Bororoska {
public static void main(String[] args){
String dados[] = new String[10];
Scanner in = new Scanner(System.in);
for (int i = 0; i < 10; i++) {
System.out.println("Entre com o " + i + “º valor:”);
dados[i] = in.nextLine(); //Armazenando no array
}

  //Imprimindo o que foi armazenado.
  System.out.println("Valores armazenados:");
  for (String str : dados) {
     System.out.println(dados);
  }

}
}[/code]

Boa noite ViniGodoy,

No meu caso, gostaria de armazenar uma expressão matemática, que não tem necessariamente um tamanho definido. Então, preciso que cada caractere dessa expressão possa ser armazenado e lido em posições diferentes.
Exemplo:

Se o usuário digitar {4+6*[10/2]+10/(1+1)}, cada caractere seria uma posição de um array.
Então vou percorrer o array pra validar se tem abre e fecha chaves, colchetes e parenteses pra validar a expressão.

Use a função charAt da classe String. Ou mesmo o toCharArray():

[code]String valor = in.nextLine();
char digitos[] = valor.toCharArray();

int i = 0;
for (char ch : digitos) {
System.out.println(ch);
}[/code]

Obrigado ViniGodoy! Problema resolvido.