Entrada de Dados

Toda entrada de dados em Java tem que ser necessariamente uma String? E na aplicação devo converter a variavel para tipo int, float?

Pode ser qualquer tipo de dado;

Scanner input = new Scanner(System.in); int numInteiro = input.nextInt();//integer float numDecimal = input.nextFloat();//Float String textto = input.next();//String

Desculpas, minha pergunta foi elaborada errada, a questão e toda entrada de dados em Java Via JOptionPane deve ser do tipo String?