logo

Как да премахнете последния знак от низ в Java

В Java има основно три класа, свързани с низ . Класовете са низ, StringBuilder , и StringBuffer клас, който предоставя методи, свързани с манипулиране на низове. Премахване на първия и последния символ от низа също е операция, която можем да извършим върху низа.

В този раздел ще научим как да премахнете последния знак от String в Java . В последния от този раздел ние също обяснихме как да изтриете първия и последния знак от всяка дума в низ .

Има четири начини за премахване на последния знак от низ:

  • Използвайки StringBuffer.deleteCahrAt() Клас
  • Използвайки String.substring() Метод
  • Използвайки StringUtils.chop() Метод
  • Използвайки Редовен израз

Използване на клас StringBuffer

The StringBuffer клас осигурява метод deleteCharAt() . Методът изтрива знак от указаната позиция. Използваме метода за премахване на знак от a низ в Java . Приема параметър индекс от тип int. Индексът е позицията на символ, който искаме да изтрием. Връща този обект.

Синтаксис:

 public StringBuffer deleteCharAt(int index) 

Хвърля се StringIndexOutOfBoundsException ако посочим отрицателен индекс или индексът е по-голям или равен на дължината на низа.

Нека приложим метода в пример.

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); } } 

Изход:

 Javatpoint is the best educational website 

В горния изход виждаме, че последният символ s е изтрит.

разделен по низ java

Използване на метода String.substring().

The подниз() е методът на класа String. Той анализира два параметъра beginIndex и endIndex от тип int. Връща нов низ (подниз) . Не е безопасен за нишки, защото не хвърля изключение, ако низът е нулев или празен.

Синтаксис:

 public String substring (int beginIndex, int endIndex) 

Ако beginIndex е отрицателен или beginIndex > endIndex или endIndex > дължина на низа то хвърля 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); } } 

Изход:

 Welcome to Javatpoin 

Използване на метода StringUtils.chop().

The StringUtils клас осигурява a котлет () метод за премахване на последния знак от низ. Методът анализира параметър от тип String. Също така приема нула , като параметър. Той връща низа след премахване на последен знак . Той също така връща a нулев низ когато въведем нулев низ.

Синтаксис:

 public static String chop(String str) 

За използване на котлет () метод на StringUtils клас, трябва да добавим следната зависимост в pom.xml файл. Когато добавим Apache Commons lang3 jar във файла pom, той изтегля файла jar и добавя файла jar към пътя. Трябва да импортираме пакета
org.apache.commons.lang3.StringUtils

 org.apache.commons commons-lang3 3.9 

След като добавим зависимостта, можем да извикаме метода chop() на класа StringUtils, за да премахнем последния знак от низа.

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); } } 

Изход:

 Googl 

Използване на регулярен израз

Можем също да използваме регулярен израз за премахване или изтриване на последния знак от низа. Класът String осигурява замениВсички() метод който анализира два параметъра регулярен израз и замяна от тип String. Методът замества низа с указаното съвпадение.

    регулярен израз:Това е изразът, с който трябва да съвпада низът.замяна:Това е заместващият низ или заместващият низ за всяко съвпадение.

Връща получения подниз.

Синтаксис:

 public String replaceAll(String regex, String replacement) 

Хвърля се PatternSyntaxException ако синтаксисът на регулярния израз е невалиден.

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('.$', ''); } } 

Изход:

 Honesty is the best polic 

Премахване на първия и последния знак от всяка дума в низ

Можем също да премахнем или изтрием първия и последния знак от всяка дума в низ. За да премахнем първия и последния знак, използваме следните стъпки:

  • Разделете (счупете) низа въз основа на интервала.
  • За всяка дума стартирайте цикъл от първата до последната буква.
  • Определете първия и последния знак на всяка дума.
  • Сега изтрийте първия и последния знак от всяка дума.

RemoveFirstAndLastCharacter.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)); } } 

Изход:

 Javatpoint is the best educational website avatpoin h es ducationa ebsit 

В горния изход виждаме, че първият и последният знак са премахнати от всяка дума на низа. Думата „е“ е напълно премахната, защото има само два знака.