واجهت مؤخرًا مشكلة صغيرة في المشروع. يتم تقسيم السلسلة إلى صفيف ، على غرار String str = "AAA ، BBB ، CCC" ؛ ثم استخدم "،" كقسم لتقسيمه إلى صفيف. ما هي الطريقة التي يمكن استخدامها لتنفيذها؟
الطريقة الأولى:
ربما ستفكر فجأة في استخدام طريقة Split (). من الأفضل تنفيذها باستخدام طريقة split () ، لكن كفاءتها منخفضة نسبيًا
الطريقة الثانية:
استخدم فئة StringTokenizer الأكثر كفاءة لتقسيم السلاسل. فئة StringTokenizer هي فئة أدوات منصوص عليها في JDK خصيصًا للمعالجة الفرعية لتجزئة السلسلة. مُنشئها على النحو التالي:
StringTokenizer العامة (String Str ، String Delim)
STR هي السلسلة المراد تقسيمها ومعالجتها ، وحكم هو رمز التجزئة. عند إنشاء كائن StringTokenizer ، يمكن الحصول على السلسلة المقسمة التالية من خلال طريقة NextToken (). بعد ذلك ، من خلال طريقة Hasmoretokens () ، يمكنك معرفة ما إذا كان هناك المزيد من عمليات التسليح التي يجب معالجتها. هذه الطريقة أكثر كفاءة من الأول.
الطريقة الثالثة:
باستخدام طريقتين للسلسلة - indexof () و substring (). يستخدم Substring () تقنية الوقت مقابل الفضاء ، وبالتالي فإن كفاءة التنفيذ الخاصة بها سريعة نسبيًا. طالما يتم التعامل مع مشكلة تدفق الذاكرة بشكل جيد ، يمكن استخدامها بجرأة. وظيفة indexof () هي طريقة تنفيذ سريعة للغاية.
النموذج الأولي على النحو التالي:
الفهرس العام العام (int ch) يعيد موضع الحرف المحدد في كائن السلسلة. على النحو التالي:
على سبيل المثال:
يتم تقسيم "AB && 2" إلى "ab" "2" string tmp = "ab && 2" ؛ String splitststr = null ؛ int j = tmp.indexof ("&") ؛ // ابحث عن موضع splitstr splitstr = tmp.substring (0 ، j) ؛ // ابحث عن محدد واعتراض tmp substring = tmp.substring (j + 2) ؛ // السلاسل المتبقية التي يجب معالجتها system.out.println (splitstr) ؛ system.out.println (TMP) ؛ AB2الطرق الثلاث أعلاه (ملخص) من تجزئة سلسلة Java هي كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.