logo

Cum să eliminați ultimul caracter din șir în Java

În Java, există în principal trei clase legate de Şir . Clasele sunt Şir, StringBuilder , și StringBuffer clasă care oferă metode legate de manipularea șirurilor. Eliminarea primului și ultimul caracter din șir este, de asemenea, o operație pe care o putem efectua pe șir.

În această secțiune, vom învăța cum să eliminați ultimul caracter din String în Java . La sfârșitul acestei secțiuni, am explicat și noi cum să ștergeți primul și ultimul caracter al fiecărui cuvânt dintr-un șir .

Sunt patru modalități de a elimina ultimul caracter dintr-un șir:

  • Folosind StringBuffer.deleteCahrAt() Clasă
  • Folosind String.substring() Metodă
  • Folosind StringUtils.chop() Metodă
  • Folosind Expresie uzuala

Utilizarea clasei StringBuffer

The StringBuffer clasă oferă o metodă deleteCharAt() . Metoda șterge un caracter din poziția specificată. Folosim metoda pentru a elimina un caracter din a șir în Java . Acceptă un parametru index de tip int. Indexul este poziția unui caracter pe care dorim să-l ștergem. Returnează acest obiect.

Sintaxă:

 public StringBuffer deleteCharAt(int index) 

Aruncă StringIndexOutOfBoundsException dacă specificăm un indice negativ sau indicele este mai mare sau egal cu lungimea șirului.

Să implementăm metoda într-un exemplu.

RemoveLastCharcter1.java

 public class RemoveLastCharcter1 { public static void main(String args[]) { String string = 'Javatpoint is the best educational websites'; //creating a constructor of StringBuffer class StringBuffer sb= new StringBuffer(string); //invoking the method sb.deleteCharAt(sb.length()-1); //prints the string after deleting the character System.out.println(sb); } } 

Ieșire:

 Javatpoint is the best educational website 

În rezultatul de mai sus, vedem că ultimul caracter s a fost șters.

împărțit prin șir de caractere java

Folosind metoda String.substring().

The substring() este metoda clasei String. Analizează doi parametri beginIndex și endIndex de tip int. Returnează un nou șir (subșir) . Nu este sigur pentru fire, deoarece nu aruncă o excepție dacă șirul este nul sau gol.

Sintaxă:

 public String substring (int beginIndex, int endIndex) 

Dacă beginIndex este negativ sau beginIndex > endIndex sau endIndex > lungimea șirului se aruncă IndexOutOfBoundsException .

RemoveLastCharacter2.java

 public class RemoveLastCharacter2 { public static void main(String[] args) { //object of the class RemoveLastCharacter2 rlc = new RemoveLastCharacter2(); String string='Welcome to Javatpoint'; //method calling string=rlc.removeLastChar(string); //prints the string System.out.println(string); } //method to remove last character private String removeLastChar(String s) { //returns the string after removing the last character return s.substring(0, s.length() - 1); } } 

Ieșire:

 Welcome to Javatpoin 

Folosind metoda StringUtils.chop().

The StringUtils clasa oferă a a toca() metodă de a elimina ultimul caracter dintr-un șir. Metoda parsează un parametru de tip String. De asemenea, acceptă nul , ca parametru. Returnează șirul după eliminarea ultimul personaj . De asemenea, returnează a șir nul când introducem un șir nul.

Sintaxă:

 public static String chop(String str) 

Pentru utilizarea a toca() metoda de StringUtils clasa, trebuie să adăugăm următoarea dependență în pom.xml fişier. Când adăugăm Apache commons lang3 jar în fișierul pom descarcă fișierul jar și adaugă fișierul jar la cale. Trebuie să importam pachetul
org.apache.commons.lang3.StringUtils

 org.apache.commons commons-lang3 3.9 

După adăugarea dependenței, putem apela metoda chop() a clasei StringUtils pentru a elimina ultimul caracter din șir.

RemoveLastCharacter3.java

 import org.apache.commons.lang3.StringUtils; public class RemoveLastCharacter3 { public static void main(String[] args) { String string='Google'; //invoking method string=StringUtils.chop(string); //prints the string after chopping the last character System.out.println(string); } } 

Ieșire:

 Googl 

Utilizarea expresiei regulate

Putem folosi și expresie uzuala pentru a elimina sau șterge ultimul caracter din șir. Clasa String oferă înlocuiește-le pe toate() metodă care analizează doi parametri regex și înlocuire de tip String. Metoda înlocuiește șirul cu potrivirea specificată.

    regex:Este expresia cu care șirul trebuie să se potrivească.înlocuire:Este șirul de înlocuire sau șirul de înlocuire pentru fiecare potrivire.

Returnează subșirul rezultat.

Sintaxă:

 public String replaceAll(String regex, String replacement) 

Aruncă PatternSyntaxException dacă sintaxa expresiei regulate este invalidă.

RemoveLastCharacter4.java

 public class RemoveLastCharacter4 { public static void main(String[] args) { //creating an object of the class RemoveLastCharacter4 rlc=new RemoveLastCharacter4(); String string='Honesty is the best policy'; //method calling string=rlc.removeLastCharacter(string); //prints the string System.out.println(string); } public String removeLastCharacter(String str) { //the replaceAll() method removes the string and returns the string return (str == null) ? null : str.replaceAll('.$', ''); } } 

Ieșire:

 Honesty is the best polic 

Eliminarea primului și ultimului caracter al fiecărui cuvânt dintr-un șir

De asemenea, putem elimina sau șterge primul și ultimul caracter al fiecărui cuvânt dintr-un șir. Pentru a elimina primul și ultimul caracter, folosim următorii pași:

  • Împărțiți (rupeți) șirul în funcție de spațiu.
  • Pentru fiecare cuvânt, rulați o buclă de la prima până la ultima literă.
  • Identificați primul și ultimul caracter al fiecărui cuvânt.
  • Acum, ștergeți primul și ultimul caracter al fiecărui cuvânt.

EliminațiFirstAndLastCharacter.java

 import java.util.*; public class RemoveFirstAndLastCharacter { static String removeFirstAndLast(String str) { //breaks the string based on space and makes the array of string String[] arrOfStr = str.split(' '); //stores the resultant string String result_string = ''; //iterate over the words for (String s : arrOfStr) { //removes first and last character result_string += s.substring(1, s.length() - 1) + ' '; } return result_string; } //main method public static void main(String args[]) { String string = 'Javatpoint is the best educational websites'; //prints the string before removing the first and last character System.out.println(string); //calling method and prints the string after removing the first and last character System.out.println(removeFirstAndLast(string)); } } 

Ieșire:

 Javatpoint is the best educational website avatpoin h es ducationa ebsit 

În rezultatul de mai sus, vedem că primul și ultimul caracter au fost eliminate din fiecare cuvânt al șirului. Cuvântul „este” a fost eliminat complet deoarece are doar două caractere.