Languages
[Edit]
PT

Java - substituir o último caractere na string

6 points
Created by:
Alyona
1114

Problema

Eu gostaria de mudar a string ABC para ABD -  - altere a Ășltima letra de 'C' para 'D'.

Na explicação com código, eu tenho:

String str = "ABC";

Eu esperava:

String str = "ABD";

Solução:

Exemplo 1

String text = "ABC";

String substring = text.substring(0, text.length() - 1); // AB
String replaced = substring + "D";

System.out.println(text);     // ABC
System.out.println(replaced); // ABD

Passos:

  1. Para criar 'AB' da nossa string, usamos o método String substring com 2 parùmetros.
    O primeiro parĂąmetro Ă© beginIndex e o segundo parĂąmetro Ă© endIndex. EndIndex Ă© o comprimento inteiro da nossa string menos 1 letra para remover a Ășltima letra.
  2. Adicionamos a letra que queremos no final da string - no nosso caso, Ă© 'D'
  3. Como esperado, substituĂ­mos a Ășltima letra de C para D.

Exemplo 2

Vamos visualizar esse problema na string com dĂ­gitos. Queremos substituir a Ășltima letra da sequĂȘncia '123' pelo dĂ­gito '4' para ter a sequĂȘncia '124'.

String text = "123";

String substring = text.substring(0, text.length() - 1); // 12
String replaced = substring + "4";

System.out.println(text);     // 123
System.out.println(replaced); // 124

Exemplo 3

No exemplo abaixo, veremos como criar o prĂłprio mĂ©todo utilitĂĄrio para nos ajudar a substituir a Ășltima letra da string. O exemplo abaixo tem o mĂ©todo utilitĂĄrio replaceLastLetter () que leva nossa string como primeiro parĂąmetro e nossa nova letra como segundo parĂąmetro. Como resultado do mĂ©todo utilitĂĄrio, obtemos string com a Ășltima letra substituĂ­da. O exemplo abaixo pega a string 'ABC' e substitui a Ășltima letra 'C' em 'D' e o resultado Ă© 'ABD'.

public class Example {

    public static String replaceLastLetter(String text, String newLetter) {
        String substring = text.substring(0, text.length() - 1); // ABC -> AB
        return substring + newLetter; // ABD
    }

    public static void main(String[] args) {
        String text = "ABC";
        String newLetter = "D";

        String replaced = replaceLastLetter(text, newLetter);

        System.out.println(text);     // ABC
        System.out.println(replaced); // ABD
    }
}

Exemplo 4

Este exemplo Ă© semelhante ao exemplo 3, mas com a diferença de usar o caractere como segundo parĂąmetro, nĂŁo o tipo String. Neste exemplo, usamos o fato de que, em java, podemos conciliar seqĂŒĂȘncias de caracteres com caracteres com o operador '+'.

O restante da lĂłgica funciona da mesma maneira

public class Example {

    public static String replaceLastLetter(String text, char newLetter) {
        String substring = text.substring(0, text.length() - 1); // ABC -> AB
        return substring + newLetter; // ABD
    }

    public static void main(String[] args) {
        String text = "ABC";
        char newLetter = 'D';

        String replaced = replaceLastLetter(text, newLetter);

        System.out.println(text);     // ABC
        System.out.println(replaced); // ABD
    }
}

ReferĂȘncias

Hey 👋
Would you like to know what we do?
  • Dirask is a friendly IT community for learners, professionals and hobbyists to share their knowledge and help each other in extraordinary easy way.
  • We welcome everyone,
    no matter what the experience,
    no matter how basic the question is,
    this community will help you.