บทความนี้อธิบายฟังก์ชั่น transpose อาร์เรย์สองมิติที่ดำเนินการโดยการเขียนโปรแกรม Java แบ่งปันสำหรับการอ้างอิงของคุณดังนี้:
/** * ใช้การถ่ายโอนของอาร์เรย์สองมิติ * @author Han * */คลาสสาธารณะ transposition_arrays2d_ch6_4 {สุดท้ายคงที่ double pi = 3.1415; โมฆะคงที่สาธารณะหลัก (สตริง [] args) { /*statictest st1 = ใหม่ statictest (); Statictest ST2 = ใหม่ statictest (); ST1.Method2 ("Han");*// ***** กำหนดอาร์เรย์สองมิติที่จะใช้สำหรับการเปลี่ยนตำแหน่ง **********/ int arr2d [] [] = {{1,2,3}, {4,5,6}, {7,8,9}}; /***** สร้างผลลัพธ์ใหม่อาร์เรย์สองมิติใหม่ใช้ในการเก็บผลลัพธ์ที่ถ่ายโอน ********//*กำหนดตัวแปรอาเรย์ผลลัพธ์ระวังที่จะเปิดหน่วยความจำก่อนมิฉะนั้นมันจะเป็นเพียงที่อยู่ผ่านนั่นคือชื่ออาร์เรย์สองอันไม่จำเป็น int result_arr เดียวกัน [] [] = new int [arr2d.length] []; // ก่อนอื่นให้ตระหนักถึงมิติแรกสำหรับ (int i = 0; i <arr2d.length; i ++) {// มิติที่สอง result_arr [i] = new int [arr2d [i] .length]; } // int result_arr [] [] = array.copyof (arr2d, arr2d.length); // บรรทัดคำสั่งด้านบนไม่ทำงาน! / ****** เอาต์พุตอาร์เรย์สองมิติสำหรับ transpose *******/ สำหรับ (int x []: arr2d) {สำหรับ (int e: x) {system.out.print (e+""); } system.out.println (); } system.out.println (); / ********* การผกผันองค์ประกอบ *******/ สำหรับ (int i = 0; i <arr2d.length; i ++) {สำหรับ (int j = 0; j <arr2d [i] .length; j ++) {result_arr [j] [i] = arr2d [i] [j]; // transfer core}}/****** แสดงผลลัพธ์ในเมทริกซ์ผลลัพธ์ ******/สำหรับ (int x []: result_arr) {สำหรับ (int e: x) {system.out.print (e+""); } system.out.println (); }}} // นำเข้า java.util.Array; // คลาสสาธารณะ transfer_arrays2d {//// โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// int arr2d [] [] = {{1,2,3}, {4,5,6}, {7,8,9}}; // มิฉะนั้นมันเป็นเพียงที่อยู่ผ่านนั่นคือชื่ออาร์เรย์สองชื่อชี้ไปที่หน่วยความจำชิ้นเดียวกัน*/// int result_arr [] [] = ใหม่ int [arr2d.length] []; // สำหรับ (int i = 0; i <arr2d.length; i ++) {// result_arr i = 0; i <arr2d.length; i ++) {// สำหรับ (int j = 0; j <arr2d [i] .length; j ++) {// result_arr [j] [i] = arr2d [i] [j]; System.out.print (e); //} // system.out.println (); //} ///} ///////} /////} //////////////}ผลการทำงาน:
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับอัลกอริทึม Java ผู้อ่านที่มีความสนใจในเว็บไซต์นี้สามารถดูหัวข้อ: "โครงสร้างข้อมูล Java และการสอนอัลกอริทึม", "บทสรุปของเคล็ดลับการดำเนินงาน Java Dom", "บทสรุปของไฟล์ Java และเคล็ดลับการดำเนินการไดเรกทอรี" และ "สรุป
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม Java ของทุกคน