Autor Tema: Localizar el ultimo caracter en una cadena y si es un punto eliminarlo en Java  (Leído 35410 veces)

Refer

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 14
    • Ver Perfil
Hola a todos. necesito un que me ayude a eliminar el ultimo carácter de una cadena para despues eliminarlo, Un ejemplo: Hola.

Yo tenia pensado hacer algo como esto:

String Cadena = Hola. //Cadena
CaracterBasura = Cadena.length() //Optiene la cantidad de caracteres de la cadena Como resultado la posicion del ultimo caracter.

If(Cadena.POSICION DEL ULTIMO CARACTER == ".")
      Cadena.metodoParaEliminarElCaracter


Bueno, He encontrado un metodo para hacer el mismo efecto pero no es muy flexible,
seria asi:

Código: [Seleccionar]
import java.util.Scanner;

class Datos{
    public static void main(String[]args){
        Scanner scanner = new Scanner(System.in);
        System.out.print("Escribe: ");
        String cadena= scanner.nextLine();
        cadena = cadena.toUpperCase();
       
       
        System.out.println("Cantidad de caracteres: "+cadena.length());
       
        if(cadena.contains("."))
        cadena = cadena.substring(0,cadena.length()-1);
       
        System.out.println(cadena);
    }
}

el metodo substring no es muy flexible, tampoco la condiccion if no es muy solida.

Por favor ayudenme a encontrar algun metodo cual me de el resultado y sea mas dinamico.

HOLA.   ---> HOLA
« Última modificación: 09 de Agosto 2015, 13:08 por Alex Rodríguez »

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:Localizar el ultimo caracter en una cadena y Eliminarlo en Java
« Respuesta #1 en: 09 de Agosto 2015, 13:08 »
Hola Refer, en el curso http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188 se explican distintas maneras en que se podría hacer esto. Además se explica por qué se debe usar equals cuando se trata de hacer comparaciones con Strings.

Si lo que quieres es verificar si el último caracter es un punto y si es así eliminarlo puedes usar este código:

Código: [Seleccionar]
import java.util.Scanner;

class Datos{
    public static void main(String[]args){
        Scanner scanner = new Scanner(System.in);
        System.out.print("Escribe una cadena: ");
        String cadena= scanner.nextLine();
        cadena = cadena.toUpperCase();
        System.out.println("Cantidad de caracteres: "+cadena.length());
        String ultimoCaracter = cadena.substring(cadena.length()-1);
       
        if (ultimoCaracter.equals(".")){
            System.out.println("Ultimo caracter es un punto por lo que se elimina");
            cadena = cadena.substring(0,cadena.length()-1);
        }
        System.out.println(cadena);
    }
}

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".