ترتيب ومجموعة من صفائف Java المتعددة ، المحتوى المحدد هو كما يلي
ملاحظة: هناك مجموعة من الهواتف المحمولة بألوان وأحجام وإصدارات مختلفة ، ثم تحتاج إلى الجمع بين العديد من السمات بينهما.
تحديد سمات مختلفة
String [] color = {"Red" ، "White" ، "Blue" ، "Gold"} ؛ String [] size = {"4.7 inches" ، "5.1 inches" ، "6.0 inches"} ؛ String [] version = {"Unicom" ، "TeleCom" ، "Mobile" ، "Enterprise"} ؛دعونا نرى النتائج أولا
أحمر ، 4.7 بوصة ، وصول كامل للشبكة ،
أحمر ، 4.7 بوصات ، الهاتف المحمول ،
أحمر ، 4.7 بوصات ، اتصالات ،
أحمر ، 4.7 بوصة ، يونيكوم ،
أحمر ، 5.1 بوصة ، وصول كامل للشبكة ،
أبيض ، 5.1 بوصة ، متنقل ،
أبيض ، 5.1 بوصة ، يونيكوم ،
أبيض ، 6.0 بوصات ، وصول كامل للشبكة ، ................. لقد نشرت الكثير ، يجب أن يكون مفهومًا
حسنًا ، أضف الرمز
public void doexchange (قائمة arraylists) {int len = arraylists.size () ؛ // احكم على ما إذا كان حجم الصفيف أقل من 2. إذا كان أقل مما كان عليه ، فهذا يعني أن الانتهاء العودية قد اكتمل. خلاف ذلك ، ماذا تفهم ، لا تفهم؟ انظر إلى الكود بشكل متقطع إذا (len <2) {this.arraylists = arraylists ؛ يعود؛ } // الحصول على المصفوفة الأولى int len0 ؛ if (arraylists.get (0) مثيل string []) {string [] arr0 = (string []) arraylists.get (0) ؛ LEN0 = ARR0.LENGTH ؛ } آخر {len0 = (ArrayList <String>) ArrayLists.get (0)). size () ؛ } // احصل على سلسلة الصفيف الثانية [] arr1 = (string []) arraylists.get (1) ؛ int len1 = arr1.length ؛ // حساب عدد مجموعات المصفوفتين يمكن أن تشكل int lenboth = len0*len1 ؛ // تحديد مجموعة التخزين المؤقت لـ Array Data ArrayList <ArrayList <String >> TempArrayLists = New ArrayList <> (Lenboth) ؛ . string [] arr0 = (string []) arraylists.get (0) ؛ ArrayList <string> arr = new ArrayList <> () ؛ arr.add (arr0 [i]) ؛ arr.add (arr1 [j]) ؛ // أضف بيانات الترتيب إلى Set TemparrayLists.Add (ARR) المؤقتة (ARR) ؛ } آخر {// في هذه المرحلة ، من الواضح أن هناك جولة واحدة على الأقل. نأخذ نتيجة الجولة السابقة ونواصل ترتيب العنصر التالي من ArrayLists ArrayList <ArrayList <string> arrtemp = (ArrayList <ArrayList <string >>) ArrayLists.get (0) ؛ ArrayList <string> arr = new ArrayList <> () ؛ لـ (int k = 0 ؛ k <arrtemp.get (i) .size () ؛ k ++) {arr.add (arrtemp.get (i) .get (k)) ؛ } arr.add (arr1 [j]) ؛ TempArraylists.Add (ARR) ؛ }}} // هذه مجموعة تم تجديدها استنادًا إلى قائمة الترتيب المذكورة أعلاه newarraylists = new ArrayList <> () ؛ // حزم الصفيف الذي لم يتم ترتيبه ويرى بوضوح i = 2 ، لأنه تم الانتهاء من المصفوفتين الأولين ، ليست هناك حاجة لإضافتها مرة أخرى إلى (int i = 2 ؛ i <arraylists.size () ؛ i ++) {newarraylists.add (arraylists.get (i)) ؛ } // تذكر أن تضيف البيانات التي عملنا بجد لترتيب المركز الأول في المجموعة الجديدة ، وإلا سيكون من غير المجدي أن تكون newarraylists.add (0 ، temparraylists) ؛ // تقرأ هذا بشكل صحيح ، تستخدم خوارزميةنا بأكملها فكرة العودية. DoExchange (Newarraylists) ؛ }ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.