Eu fiz um programa simples com vários scanners para serem digitados pelo usuário, só que eu queria deixar como opcional algumas entradas, por exemplo, bastasse o usuario dá enter e dai ele consideraria aquilo como null e pulasse pra proxima entrada. Só que ele não faz isso, qnd eu dou enter, ele conitnua esperando uma entrada qualquer do usuário. Como fazer?
Pode postar o código? Comportamento estranho esse.
A classe Scanner tem exatamente o mesmo problema do scanf do C.
Por exemplo, scanf ("%d", &x) em C fica tentando ler um número, mesmo que você fique digitando ENTER adoidado, e só vai parar quando você digitar um número e teclar ENTER.
A mesma coisa acontece com x = scanner.nextInt() do Java.
Na prática, em C não se usa scanf (a menos que você queira criar um programa bem bobinho) e sim lêem-se as strings (talvez linhas, por exemplo usando o método fgets (stdin), e então convertem-se as strings (usando sscanf ou então as N funções de conversão disponíveis).
Da mesma forma, eu não recomendaria usar diretamente a classe Scanner para ler diretamente do teclado. Use BufferedReader para ler cada linha, e Scanner para pegar os valores desejados de cada string (ou então as conversões adequadas, como Integer.valueOf etc.)