Sortieren Sie Elemente eines Arrays in aufsteigender Reihenfolge

Ich versuche ein Array in aufsteigender Reihenfolge zu sortieren. Aus irgendeinem Grund führt es nur einmal die for-Schleife aus. Warum geht es nicht weiter, bis alles sortiert ist?

Es ist für eine Aufgabe, so dass ich keine vorhandenen Sortiermethoden verwenden darf. Ich soll die Methode selbst schreiben.

public class Sudoku { public static void main(String[] args) { int[] a = { 1, 4, 3, 5, 2 }; System.out.println(Arrays.toString(sortArray(a))); } public static int[] sortArray(int[] nonSortedArray) { int[] sortedArray = new int[nonSortedArray.length]; int temp; for (int i = 0; i  nonSortedArray[i + 1]) { temp = nonSortedArray[i]; nonSortedArray[i] = nonSortedArray[i + 1]; nonSortedArray[i + 1] = temp; sortedArray = nonSortedArray; } } return sortedArray; } } 

 public static int[] sortArray(int[] nonSortedArray) { int[] sortedArray = new int[nonSortedArray.length]; int temp; for (int j = 0; j < nonSortedArray.length - 1; j++) {// added this for loop, think about logic why do we have to add this to make it work for (int i = 0; i < nonSortedArray.length - 1; i++) { if (nonSortedArray[i] > nonSortedArray[i + 1]) { temp = nonSortedArray[i]; nonSortedArray[i] = nonSortedArray[i + 1]; nonSortedArray[i + 1] = temp; sortedArray = nonSortedArray; } } } return sortedArray; } 

Ausgabe: [1, 2, 3, 4, 5]

oder

 //making use of j public static int[] sortArray(int[] nonSortedArray){ int[] sortedArray = new int[nonSortedArray.length]; int temp; for (int i = 0; i < = nonSortedArray.length; i++) { for (int j = i+1; j < nonSortedArray.length; j++) { if (nonSortedArray[i] > nonSortedArray[j]) { temp = nonSortedArray[i]; nonSortedArray[i] = nonSortedArray[j]; nonSortedArray[j] = temp; sortedArray = nonSortedArray; } } } return sortedArray; } 

Sie versuchen, ein Array mit einer einzelnen Schleife zu sortieren. Sie würden zwei Schleifen benötigen, um sicherzustellen, dass die Elemente in sortierter Reihenfolge sind.

 public static int[] sortArray(int[] nonSortedArray) { int[] sortedArray = new int[nonSortedArray.length]; int temp; for (int i = 0; i < nonSortedArray.length-1; i++) { for (int j = i+1; j < nonSortedArray.length; j++) { if (nonSortedArray[i] > nonSortedArray[j]) { temp = nonSortedArray[i]; nonSortedArray[i] = nonSortedArray[j]; nonSortedArray[j] = temp; sortedArray = nonSortedArray; } } } return sortedArray; } 
  arr = new int[Item]; Arrays.sort(arr); 

Eingebaute function in Java, um das Array in aufsteigender Reihenfolge zu sortieren.

Dies wird ein Array in aufsteigender Reihenfolge sortieren

 int arr[]={33,3,4,5,1}; Arrays.sort(arr); System.out.println(Arrays.toString (arr)); 

Ausgabe wird: – [1,3,4,5,33]