Я новичок в Java, и я учусь играть с опцией замены.
Я пытаюсь сделать программу, которая начинается с меню, которое дает 3 варианта.
- Написать строку
- Составляет список символов в строке в
порядок (Пример: Буква 1: H Буква 2: E Буква 3: L Буква 4: L Буква 5: O)
и на и он скажет количество символов и пробелов в
Строка имеет.
- Выход
Я сделал этот код:
public class LEtras {
static String frase="" , letra="",salida="";
static int Espacios=0, noletras=0;
public static void Frase() {
frase = JOptionPane.showInputDialog("Ingrese una frase");
int x = frase.length();
for(int i=0;i<x;i++){
letra = frase.substring(x);
if(" ".equals(letra)){
Espacios++;
} else {
noletras++;
}
}
Menu();
}
public static void imprimir() {
int f = frase.length();
for(int i=0;i<f;i++){
letra = frase.substring(f);
salida+="Letra " + (i+1) + ": "+letra;
}
JOptionPane.showMessageDialog(null,salida,"Salida",2);
}
public static void Menu(){
int op = 0;
do{
op = Integer.parseInt(JOptionPane.showInputDialog("Menu principal" + "\n 1)Frase 2)Datos 3)Salir"));
switch(op){
case 1 : Frase();break;
case 2 : imprimir();break;
default : JOptionPane.showMessageDialog(null,"SALIENDO","SALIR",2); break;
}
}while(op<=2);
}
public static void main(String[] args) {
Menu();
}
У меня есть несколько проблем с этим кодом, во-первых, во время составления списка, который он просто печатает (Letra 1: Letra2: Letra3 :), он не печатает символ в строке. Также я не знаю как в конце строки во втором варианте я собираюсь указать количество пробелов и количество символов. И я также с этой ошибкой:
Exception in thread "main" java.lang.NumberFormatException: null
at java.lang.Integer.parseInt(Integer.java:542)
at java.lang.Integer.parseInt(Integer.java:615)
at Metodos.LEtras.Menu(LEtras.java:43)
at Metodos.LEtras.main(LEtras.java:52)
И я не знаю, что это значит, так как я новичок в программировании.
Извините за плохой английский. И спасибо за вашу помощь