فيما يلي طريقة لتنفيذ انعكاس السلسلة في 5 في جافا.
1. المصفوفات تنفيذ انعكاس السلسلة
// Array تنفذ سلسلة انقلاب السلسلة العامة reversebyarray () {if (str == null || str.length () == 1) {return null ؛ } char [] ch = str.tochararray () ؛ // تحويل سلسلة إلى صفيف أحرف (int i = 0 ؛ i <ch.length/2 ؛ i ++) {char temp = ch [i] ؛ ch [i] = ch [ch.length-i-1] ؛ ch [ch.length-i-1] = temp ؛ } إرجاع سلسلة جديدة (الفصل) ؛ }2. يتم تنفيذ انعكاس السلسلة
// استخدم المكدس لتنفيذ سلسلة الانقلاب العامة reversebystack () {if (str == null || str.length () == 1) {return null ؛ } stack <Farhtor> stack = new stack <Farhort> () ؛ char [] ch = str.tochararray () ؛ // تحويل السلاسل إلى صفيف حرف لـ (char c: ch) {stack.push (c) ؛ // كل حرف ، ادفع المكدس} لـ (int i = 0 ؛ i <ch.length ؛ i ++) {ch [i] = stack.pop () ؛ } 3. عكس اجتياز التحقيق في انعكاس السلسلة
// استخدم العكسي للتنفيذ لتنفيذ سلسلة انقلاب السلسلة العامة العكسي () {if (str == null || str.length () == 1) {return null ؛ } StringBuffer SB = new StringBuffer () ؛ لـ (int i = str.length () -1 ؛ i> = 0 ؛ i--) {sb.append (str.charat (i)) ؛ // استخدم stringBuffer لصق الأحرف من اليمين إلى اليسار} إرجاع sb.toString () ؛ } 4. عملية بت تحقق عكس السلسلة
// استخدم عملية بت لتنفيذ سلسلة الانقلاب العامة reversebitbit () {if (str == null || str.length () == 1) {return null ؛ } char [] ch = str.tochararray () ؛ // تحويل السلاسل إلى صفيف حرف int len = str.length () ؛ لـ (int i = 0 ؛ i <len/ 2 ؛ i ++) {ch [i]^= ch [len- 1- i] ؛ ch [len- 1- i]^= ch [i] ؛ ch [i]^= ch [len- 1- i] ؛ } إرجاع سلسلة جديدة (الفصل) ؛ } 5. تنفيذ انعكاس السلسلة بشكل متكرر
// استخدم RECURSION لتنفيذ سلسلة انعكاس public reversebercursive (String str) {if (str == null || str.length () == 0) {return null ؛ } if (str.length () == 1) {return str ؛ } آخر {// seave السلسلة من التراكمية من 1 ، return reversebrecursive (str.substring (1)) + str.charat (0) ؛ }} السادس. امتحان
اختبار الفئة العامة {public static void main (string [] args) {string s = "123456" ؛ عكس r = عكس جديد (s) ؛ System.out.println (R.Reversebyarray ()) ؛ System.out.println (R.ReversebyStack ()) ؛ System.out.println (R.Reversebysort ()) ؛ System.out.println (R.Reversebit ()) ؛ System.out.println (R.ReversebyRecursive (s)) ؛ }}7. النتائج
8. جميع الرموز المستخدمة لانعكاس السلسلة
الفئة العامة العكسية {private string str = null ؛ العكس العام (سلسلة str) {this.str = str ؛ }. } char [] ch = str.tochararray () ؛ // تحويل السلسلة إلى صفيف حرف لـ (int i = 0 ؛ i <ch.length/2 ؛ i ++) {char temp = ch [i] ؛ ch [i] = ch [ch.length-i-1] ؛ ch [ch.length-i-1] = temp ؛ } إرجاع سلسلة جديدة (الفصل) ؛ } // استخدم المكدس لتنفيذ سلسلة الانقلاب العامة reversebystack () {if (str == null || str.length () == 1) {return null ؛ } stack <Farhtor> stack = new stack <Farhort> () ؛ char [] ch = str.tochararray () ؛ // تحويل السلاسل إلى صفيف حرف لـ (char c: ch) {stack.push (c) ؛ // كل حرف ، ادفع المكدس} لـ (int i = 0 ؛ i <ch.length ؛ i ++) {ch [i] = stack.pop () ؛ } // استخدم اجتيازًا عكسيًا لتنفيذ سلسلة انقلاب السلسلة العامة reversebysort () {if (str == null || str.length () == 1) {return null ؛ } StringBuffer SB = new StringBuffer () ؛ لـ (int i = str.length () -1 ؛ i> = 0 ؛ i--) {sb.append (str.charat (i)) ؛ // استخدم stringBuffer لصق الأحرف من اليمين إلى اليسار} إرجاع sb.toString () ؛ } // استخدم عمليات بت لتنفيذ سلسلة الانقلاب العامة reversebitbit () {if (str == null || str.length () == 1) {return null ؛ } char [] ch = str.tochararray () ؛ // تحويل السلاسل إلى صفيف حرف int len = str.length () ؛ لـ (int i = 0 ؛ i <len/ 2 ؛ i ++) {ch [i]^= ch [len- 1- i] ؛ ch [len- 1- i]^= ch [i] ؛ ch [i]^= ch [len- 1- i] ؛ } إرجاع سلسلة جديدة (الفصل) ؛ } // استخدم RECURSION لتنفيذ String REVERSERECURESIVE (String str) {if (str == null || str.length () == 0) {return null ؛ } if (str.length () == 1) {return str ؛ } آخر {// seave السلسلة من التراكمية من 1 ، return reversebrecursive (str.substring (1)) + str.charat (0) ؛ }}}الطرق الخمسة المذكورة أعلاه لتنفيذ انعكاس السلسلة في Java هي كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.