تقوم طريقة Java String substring() بإرجاع الجزء الفرعي لهذه السلسلة. تقوم هذه الطريقة دائمًا بإرجاع سلسلة جديدة وتظل السلسلة الأصلية غير متغيرة لأن String لا يمكن تغييرها في Java.
Java String substring() Methods
طريقة Java String substring محملة ولديها نوعان.
substring(int beginIndex)
: تقوم هذه الطريقة بإرجاع سلسلة جديدة تكون جزءًا من هذه السلسلة. يبدأ الجزء الفرعي بالحرف في الفهرس المحدد ويمتد حتى نهاية هذه السلسلة.substring(int beginIndex, int endIndex)
: يبدأ الجزء الفرعي في الفهرس المحدد ويمتد إلى الحرف في الفهرس endIndex – 1. بالتالي، طول الجزء الفرعي هو (endIndex – beginIndex).
String substring() Method Important Points
- كلتا طريقتين للسلاسل الفرعية يمكن أن تُثير استثناء
IndexOutOfBoundsException
إذا تم تلبية أي من الشروط أدناه.- إذا كانت beginIndex سالبة
- endIndex أكبر من طول كائن السلسلة هذا
- beginIndex أكبر من endIndex
- beginIndex شامل وendIndex غير شامل في كلتا طريقتي substring.
مثال على طريقة substring() في جافا
فيما يلي برنامج بسيط للسلسلة الفرعية في جافا.
package com.journaldev.util;
public class StringSubstringExample {
public static void main(String[] args) {
String str = "www.journaldev.com";
System.out.println("Last 4 char String: " + str.substring(str.length() - 4));
System.out.println("First 4 char String: " + str.substring(0, 4));
System.out.println("website name: " + str.substring(4, 14));
}
}
إخراج برنامج مثال السلسلة الفرعية أعلاه هو:
Last 4 char String: .com
First 4 char String: www.
website name: journaldev
التحقق من الكلمة الشبه قائمة باستخدام طريقة substring()
يمكننا استخدام طريقة substring() للتحقق مما إذا كانت سلسلة معينة هي كلمة شبه قائمة أم لا.
package com.journaldev.util;
public class StringPalindromeTest {
public static void main(String[] args) {
System.out.println(checkPalindrome("abcba"));
System.out.println(checkPalindrome("XYyx"));
System.out.println(checkPalindrome("871232178"));
System.out.println(checkPalindrome("CCCCC"));
}
private static boolean checkPalindrome(String str) {
if (str == null)
return false;
if (str.length() <= 1) {
return true;
}
String first = str.substring(0, 1);
String last = str.substring(str.length() - 1);
if (!first.equals(last))
return false;
else
return checkPalindrome(str.substring(1, str.length() - 1));
}
}
هنا نتحقق مما إذا كانت الحرف الأول والحرف الأخير متطابقين أم لا. إذا لم يكونا متطابقين، فإننا نعيد false. وإلا، نستدعي الطريقة مرة أخرى بشكل متكرر باستثناء الحرف الأول والحرف الأخير.
يمكنك التحقق من مزيد من أمثلة السلاسل في مستودع GitHub.
Source:
https://www.digitalocean.com/community/tutorials/java-string-substring