logo

Java'da String'den Son Karakter Nasıl Kaldırılır

Java'da temel olarak aşağıdakilerle ilgili üç sınıf vardır: Sicim . Sınıflar Sicim, StringBuilder , Ve StringBuffer dize manipülasyonuyla ilgili yöntemler sağlayan sınıf. String'den ilk ve son karakteri kaldırmak aynı zamanda string üzerinde gerçekleştirebileceğimiz bir işlemdir.

Bu bölümde öğreneceğiz String'den son karakterin nasıl kaldırılacağı Java . Bu bölümün sonunda da açıkladık. bir dizedeki her kelimenin ilk ve son karakterinin nasıl silineceği .

Var dört Bir dizedeki son karakteri kaldırmanın yolları:

  • Kullanma StringBuffer.deleteCahrAt() Sınıf
  • Kullanma String.substring() Yöntem
  • Kullanma StringUtils.chop() Yöntem
  • Kullanma Düzenli ifade

StringBuffer Sınıfını Kullanma

StringBuffer sınıf bir yöntem sağlar deleteCharAt() . Yöntem, belirtilen konumdan bir karakteri siler. Bir karakteri bir karakterden kaldırmak için bu yöntemi kullanırız. Java'da dize . Bir parametreyi kabul eder dizin int türünden. İndeks silmek istediğimiz karakterin konumudur. Bu nesneyi döndürür.

Sözdizimi:

 public StringBuffer deleteCharAt(int index) 

Fırlatıyor StringIndexOutOfBoundsException negatif bir dizin belirtirsek veya dizin dizenin uzunluğundan büyük veya ona eşitse.

Yöntemi bir örnek üzerinde uygulayalım.

LastCharcter1.java'yı kaldır

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

Çıktı:

 Javatpoint is the best educational website 

Yukarıdaki çıktıda son karakterin silindiğini görüyoruz.

java'da bir dizi nasıl başlatılır

String.substring() Yöntemini Kullanma

alt dize() String sınıfının yöntemidir. İki parametreyi ayrıştırır başlangıçIndex Ve endIndex int türünden. Yeni bir şey döndürür dize (alt dize) . İş parçacığı açısından güvenli değildir çünkü dize boş veya boşsa bir istisna oluşturmaz.

Sözdizimi:

 public String substring (int beginIndex, int endIndex) 

Eğer beginIndex negatif veya beginIndex > endIndex ya da endIndex > dizenin uzunluğu fırlatır IndexOutOfBoundsException .

LastCharacter2.java'yı kaldır

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

Çıktı:

 Welcome to Javatpoin 

StringUtils.chop() Yöntemini Kullanma

StringUtils sınıf sağlar kesmek() Bir dizedeki son karakteri kaldırma yöntemi. Yöntem, String türündeki bir parametreyi ayrıştırır. Ayrıca kabul ediyor hükümsüz parametre olarak. Kaldırdıktan sonra dizeyi döndürür son karakter . Aynı zamanda bir döndürür boş dize boş bir dize girdiğimizde.

Sözdizimi:

 public static String chop(String str) 

Kullanmak için kesmek() yöntemi StringUtils sınıfa aşağıdaki bağımlılığı eklememiz gerekiyor. pom.xml dosya. eklediğimizde Apache ortak dil3 pom dosyasındaki jar dosyasını indirir ve jar dosyasını yola ekler. Paketi içe aktarmalıyız
org.Apache.commons.lang3.StringUtils

 org.apache.commons commons-lang3 3.9 

Bağımlılığı ekledikten sonra, dizedeki son karakteri kaldırmak için StringUtils sınıfının Chop() yöntemini çağırabiliriz.

LastCharacter3.java'yı kaldır

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

Çıktı:

 Googl 

Normal İfadeyi Kullanma

Ayrıca şunu da kullanabiliriz: Düzenli ifade dizedeki son karakteri kaldırmak veya silmek için. String sınıfı şunları sağlar: hepsini değiştir() yöntem iki parametreyi ayrıştıran normal ifade Ve yenisiyle değiştirme String türünde. Yöntem, dizeyi belirtilen eşleşmeyle değiştirir.

    normal ifade:Dizenin eşleşeceği ifadedir.yenisiyle değiştirme:Her eşleşme için yedek dize veya yedek dizedir.

Ortaya çıkan alt dizeyi döndürür.

Sözdizimi:

 public String replaceAll(String regex, String replacement) 

Fırlatıyor ModelSözdizimiİstisna normal ifade sözdizimi geçersizse.

LastCharacter4.java'yı kaldır

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

Çıktı:

 Honesty is the best polic 

Bir Dizedeki Her Kelimenin İlk ve Son Karakterini Kaldırma

Ayrıca bir dizedeki her kelimenin ilk ve son karakterini de kaldırabilir veya silebiliriz. İlk ve son karakteri kaldırmak için aşağıdaki adımları kullanırız:

  • Dizeyi boşluğa göre bölün (kırın).
  • Her kelime için ilk harften son harfe kadar bir döngü çalıştırın.
  • Her kelimenin ilk ve son karakterini tanımlayın.
  • Şimdi her kelimenin ilk ve son karakterini silin.

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

Çıktı:

 Javatpoint is the best educational website avatpoin h es ducationa ebsit 

Yukarıdaki çıktıda stringin her kelimesindeki ilk ve son karakterin çıkarıldığını görüyoruz. 'Olmak' kelimesi yalnızca iki karakterden oluştuğu için tamamen kaldırılmıştır.