2012-01-28 5 views
0

こんにちは私は、文字列の配列を取り、それらをソートするバブルソートメソッドを持っています。しかし、ソートされた文字列を別の配列に入力して、ソートされていない配列を他のものに使用できるようにしたい。誰かが私を助けたり正しい方向に私を導くことができますか?おかげ出力バブルソートの結果をJavaの配列

私は文字列を格納したい新しい配列が

public static void sortStringBubble(String x [ ]) 
{ 
     int j; 
     boolean flag = true; 
     String temp; 

     while (flag) 
     { 
      flag = false; 
      for (j = 0; j < x.length - 1; j++) 
      { 
        if (x [ j ].compareToIgnoreCase(x [ j+1 ]) > 0) 
        {            
           temp = x [ j ]; 
           x [ j ] = x [ j+1];  
           x [ j+1] = temp; 
           flag = true; 

        } 
      } 
     } 
} 
+0

なぜSystem.arraycopy()を使用しないのですか?その配列を並べ替えるよりも。 – RanRag

答えて

0

は、あなたのメソッドがvoidではなく、String []型を返すようmyArray2 HERESに私のバブルソートコードと呼ばれています。

public static String[] sortStringBubble(String x [ ]) 
    String[] copy = new String[x.length]; 
    System.arraycopy(x, 0, copy, 0, x.length); 

    // do everything on the copy 

    return copy; 
} 
+0

私はそれを試みましたが、元の配列はまだソートされました – jj007

+0

残念ですが動作しますが、印刷と呼ばれるJListオブジェクトで印刷することはできません。私は新しいJListのprint(copy)を呼び出そうとしましたが、それは仕事をしませんでした – jj007

+0

@ jj007: 'JList'でうまく動作します。' JList listより 'String [] temp = t.sortStringBubble(x);' =新しいJList(temp) '。ここで 't'は' sortStringBubble'が存在するクラスのオブジェクトです。 – RanRag

1

わから 1)文字列は、[]

public static String[] sortStringBubble(String[] input ) { 

2)新しい文字列を追加するメソッドのシグネチャを変更[] X

String[] x = (String[])input.clone(); 

3)は、戻り追加x下位

return x; 
+0

私はそれを試みたが、元の配列はまだソートされます – jj007

+0

申し訳ありませんが動作しますが、私は印刷と呼ばれるJListオブジェクトで印刷することができません。私は新しいJList print(x)を呼び出すことを試みたが、それは仕事をしなかった – jj007

+1

Neverの心私はそれを助けてくれた – jj007

関連する問題