Home >Java >javaTutorial >Sort String Array in Java

Sort String Array in Java

WBOY
WBOYOriginal
2024-08-30 15:29:17688browse

Sorting is a very important feature in programming as it sets the different elements of an array in the required order. Generally, people use alphabetical order or increasing or decreasing orders. Sorting is generally done to convert a raw and unorganized form of data into proper and organized order for making it meaningful for the human brain. There are two methods for performing sorting string array. The first method is called custom sorting or user-defined logic sorting and the second method is called natural sorting or Array.sort() sorting. In this article both the methods are explained using multiple examples and their working. In this topic, we are going to learn about Sort String Array in Java.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

Methods and Examples of Sorting String Array in Java

Here are the following examples and methods mentioned below

1. Using User-Defined Logic or custom sorting

Sorting can be done by comparing each and every element individually with the rest of the elements. In the first example, the same process is performed. There are two loops used, the repetitions while performing comparison is avoided by the inner loop. When the condition (favouritefood[a].compareTo(favouritefood[b])>0) results true than 0,now the program performs the swapping and array sorting is done. Similarly, all of the elements of the array are checked using the condition and the sorting is completed. In this example, the elements are sorted in an alphabetical order using user-defined logic or custom sorting.

Example #1
import java.util.Arrays;
public class Sortingexample1
{
public static void main(
String args[])
{
String[] favouritefood = {" Pizza \n "
, " Pasta \n "
, " Chole Bhature \n "
, " Paratha \n "
, " Chowmein \n "
, " Momo \n "
, " Fried Rice \n "
, " Maggie \n "
, " Garlic Bread \n "
, " Biryani \n "
, " Gulab Jamun \n "
};
System.out.print(" Rahul favourite foods are: \n " );
int length = favouritefood.length;
for(int a = 0
; a<length-1
; a++)
{
for (int b = a+1
; b<favouritefood.length
; b++)
{
if(favouritefood[a].compareTo(
favouritefood[b]
)>0)
{
String virtual = favouritefood[a];
favouritefood[a] = favouritefood[b];
favouritefood[b] = virtual;
}
}
}
System.out.println(
Arrays.toString(
favouritefood
));
}
}

Output:

Sort String Array in Java

Example #2

This example has been performed using three simple steps. Firstly, using loop we have to convert the input string into a character array. Now, Arrays.sort(array1, new Comparator () is used to sort the character array. Here the compare() method is used according to the behavior of the custom sorting. Now, use the StringBuilder to create a string from the character array.

import java.util.Arrays;
import java.util.Comparator;
public class Sortingexample2
{
public static String sortString(
String initialstringused
)
{
System.out.println(
" Mixed kinda character string used \n "
);
Character array1[] = new Character[
initialstringused.length()
];
for (int a = 0
; a < initialstringused.length()
; a++) {
array1[a] = initialstringused.charAt(a);
}
System.out.println(
" We use character string here \n "
);
Arrays.sort(
array1, new Comparator<Character>()
{
@Override
public int compare(Character FirstInput, Character SecondInput)
{
return Character.compare(Character.toUpperCase(FirstInput),
Character.toUpperCase(SecondInput));
}
});
StringBuilder b = new StringBuilder(array1.length);
for (
Character c
: array1
)
b.append(
c.charValue()
);
return b.toString();
}
public static void main(String[] args)
{
String initialstringused = " \n Biryani is loved by Rahul \n ";
String stringwegetinreturn = sortString(
initialstringused
);
System.out.println(
" Got an output as : \n " + stringwegetinreturn
);
System.out.println(
" \n Initial sentence entered was : \n " + initialstringused
);
}
}

Output:

Sort String Array in Java

2. Using Arrays.sort() or natural sorting

Natural sorting is done in three steps. Firstly, toCharArray() method is applied to the input string for creating a character array of the input string. Now, Arrays.sort(char c[]) method is used to sort the character array. Now string class constructor is used for creating a sorted string from the character array.

Example #1
import java.util.Arrays;
public class Sortingexample3
{
public static String sortString(
String initialstringused)
{
char sameArray[] = initialstringused.toCharArray();
System.out.println(
" Mixed kinda character string used \n "
);
Arrays.sort(
sameArray);
System.out.println(
" We use character string here \n "
);
return new String(sameArray);
}
public static void main(String[] args)
{
String initialstringused = " \n Choley Bhature is loved by Rahul \n ";
String stringwegetinreturn = sortString(
initialstringused
);
System.out.println(
"Input String : " + initialstringused
);
System.out.println("Output String : " + stringwegetinreturn
);
}
}

Output:

Sort String Array in Java

Example #2
import java.util.Arrays;
public class Sortingexample4
{
public static void main(String args[])
{
String[] favouritefood = {" \n Pizza \n "
, " \n Pasta \n "
, " \n Chole Bhature \n "
, " \n Paratha \n "
, " \n Chowmein \n "
, " \n Momo \n "
, " \n Fried Rice \n "
, " \n Maggie \n "
, " \n Garlic Bread \n "
, " \n Biryani \n "
, " \n Gulab Jamun \n "
};
System.out.print(" \n Actual food list entered: \n " );
System.out.println(Arrays.toString(favouritefood));
System.out.print(" \n Rahul favourite foods are: \n " );
Arrays.sort(favouritefood);
System.out.println(Arrays.toString(favouritefood));
}
}

Output:

Sort String Array in Java

Conclusion

On the basis of the above article, we understood the sort string array in Java. Sort String Array has two methods and both the methods are explained in the article using multiple examples. The examples will help the beginners in understanding the implementation of Sort String Array in a Java code to get the required results.

The above is the detailed content of Sort String Array in Java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:Java array.pushNext article:Java array.push