2016-10-09 8 views
0

以下は私のコードです。ここでは、私は2D配列の名前の2つを切り替える必要がありますが、私はこれを行う方法がわかりません。2次元配列の2つの文字列を切り替えるには

誰でも知っていますか?

import java.util.Scanner; 

    public class Homeworktest { 
     public static void main(String[] args) { 

      String[][] people = new String[3][3]; 
      people[0][0] = "April"; 
      people[0][1] = "Jenny"; 
      people[0][2] = "Charlie"; 
      people[1][0] = "Maya"; 
      people[1][1] = "Daniel"; 
      people[1][2] = "Felix"; 
      people[2][0] = "Jack"; 
      people[2][1] = "Charlotte"; 
      people[2][2] = "Nick"; 

      for(int i = 0; i < people.length; i++) { 
       String[] subarrays = seatingChart[i]; 
       for(int y = 0; y < people.length; y++) { 
        System.out.print(subarrays[y] + " "); 
       } 

       System.out.println(); 
      } 

      public static void switchSeats(int row1, int col1, int row2, int col2) { 

      } 
     } 
    } 
+0

最初の変数の値を一時変数に保持し、最初の変数を2番目の変数に置き換え、2番目の変数を一時変数の値で置き換えます。 – Gendarme

答えて

1

、まず、2つの配列位置の値を交換一時変数の値を保持し、第一の位置に第二の位置の値を割り当て、最後に第二の場所に一時変数の値を代入します。

public static void switchSeats(String[][] people, int row1, 
             int col1, int row2, int col2) { 

    String tmp = people[row1][col1]; 
    people[row1][col1] = people[row2][col2]; 
    people[row2][col2] = tmp; 

} 

上記のコードでは、tmpが一時変数として機能します。

+0

これは間違っています。 2番目のステートメントは 'people [row1] [col1] = people [row2] [col2];'でなければなりません。 – Gendarme

+0

U R権利が修正されました。 –

関連する問題