ال الانضمام إلى فئة سلسلة جافا () تقوم الطريقة بإرجاع سلسلة مرتبطة بمحدد معين. في طريقة String join()، يتم نسخ المحدد لكل عنصر. تم تضمين طريقة join () في سلسلة Java منذ JDK 1.8.
هناك نوعان من أساليب الانضمام () في فئة Java String.
إمضاء
التوقيع أو بناء جملة طريقة join() موضح أدناه:
public static String join(CharSequence delimiter, CharSequence... elements) and public static String join(CharSequence delimiter, Iterable elements)
حدود
محدد : قيمة char المراد إضافتها مع كل عنصر
عناصر : قيمة char المراد إرفاقها بالمحدد
مراقب أنبوب أشعة الكاثود
عائدات
انضمت سلسلة مع محدد
رميات الاستثناء
NullPointerException إذا كان العنصر أو المحدد فارغًا.
منذ
1.8
التنفيذ الداخلي
// type - 1 public static String join(CharSequence delimiter, CharSequence... elements) { Objects.requireNonNull(elements); Objects.requireNonNull(delimiter); StringJoiner jnr = new StringJoiner(delimiter); for (CharSequence c: elements) { jnr.add(c); } return jnr.toString(); }
// type - 2 public static String join(CharSequence delimiter, CharSequence... elements) { Objects.requireNonNull(elements); Objects.requireNonNull(delimiter); StringJoiner jnr = new StringJoiner(delimiter); for (CharSequence c: elements) { jnr.add(c); } return jnr.toString(); } public static String join(CharSequence delimiter, Iterable elements) { Objects.requireNonNull(elements); Objects.requireNonNull(delimiter); StringJoiner jnr = new StringJoiner(delimiter); for (CharSequence c: elements) { joiner.add(c); } return jnr.toString(); }
مثال على طريقة Java String join()
اسم الملف: StringJoinExample.java
public class StringJoinExample{ public static void main(String args[]){ String joinString1=String.join('-','welcome','to','javatpoint'); System.out.println(joinString1); }}اختبره الآن
انتاج:
welcome-to-javatpoint
Java String join() طريقة المثال 2
يمكننا استخدام محدد لتنسيق السلسلة كما فعلنا في المثال أدناه لإظهار التاريخ والوقت.
اسم الملف: StringJoinExample2.java
public class StringJoinExample2 { public static void main(String[] args) { String date = String.join('/','25','06','2018'); System.out.print(date); String time = String.join(':', '12','10','10'); System.out.println(' '+time); } }
انتاج:
ج ++ واجهة المستخدم الرسومية
25/06/2018 12:10:10
Java String join() طريقة المثال 3
في حالة استخدام null كمحدد، نحصل على استثناء المؤشر null. والمثال التالي يؤكد نفس الشيء.
اسم الملف: StringJoinExample3.java
public class StringJoinExample3 { // main method public static void main(String argvs[]) { String str = null; str = String.join(null, 'abc', 'bcd', 'apple'); System.out.println(str); } }
انتاج:
Exception in thread 'main' java.lang.NullPointerException at java.base/java.util.Objects.requireNonNull(Objects.java:221) at java.base/java.lang.String.join(String.java:2393) at StringJoinExample3.main(StringJoinExample3.java:7)
ومع ذلك، إذا كانت العناصر التي يجب إرفاقها بالمحدد هي باطل ثم نحصل على الغموض. وذلك لأن هناك طريقتين join()، و باطل مقبول لكلا النوعين من طريقة join(). لاحظ المثال التالي.
اسم الملف: StringJoinExample4.java
public class StringJoinExample4 { // main method public static void main(String argvs[]) { String str = null; str = String.join('India', null); System.out.println(str); } }
انتاج:
/StringJoinExample4.java:7: error: reference to join is ambiguous str = String.join('India', null); ^ both method join(CharSequence,CharSequence...) in String and method join(CharSequence,Iterable) in String match /StringJoinExample4.java:7: warning: non-varargs call of varargs method with inexact argument type for last parameter; str = String.join('India', null); ^ cast to CharSequence for a varargs call cast to CharSequence[] for a non-varargs call and to suppress this warning 1 error 1 warning
Java String join() طريقة المثال 4
إذا كانت العناصر التي يجب إرفاقها مع المحدد تحتوي على بعض السلاسل، حيث يكون عدد قليل منها خاليًا، فسيتم التعامل مع العناصر الخالية كسلسلة عادية، ولا نحصل على أي استثناء أو خطأ. دعونا نفهم ذلك من خلال مثال.
حلقة جافا المحسنة
اسم الملف: StringJoinExample5.java
public class StringJoinExample5 { // main method public static void main(String argvs[]) { String str = null; // one of the element is null however it will be treated as normal string str = String.join('-', null, ' wake up ', ' eat ', ' write content for JTP ', ' eat ', ' sleep '); System.out.println(str); } }
انتاج:
null- wake up - eat - write content for JTP - eat - sleep