1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
/* Java Sort String Array Example This Java Sort String Array example shows how to sort an array of Strings in Java using Arrays.sort method. */ import java.util.Arrays; public class SortStringArrayExample { public static void main(String args[]){ //String array String[] strNames = new String[]{"John", "alex", "Chris", "williams", "Mark", "Bob"}; /* * To sort String array in java, use Arrays.sort method. * Sort method is a static method. * */ //sort String array using sort method Arrays.sort(strNames); System.out.println("String array sorted (case sensitive)"); //print sorted elements for(int i=0; i < strNames.length; i++){ System.out.println(strNames[i]); } /* * Please note that, by default Arrays.sort method sorts the Strings * in case sensitive manner. * * To sort an array of Strings irrespective of case, use * Arrays.sort(String[] strArray, String.CASE_INSENSITIVE_ORDER) method instead. */ //case insensitive sort Arrays.sort(strNames); System.out.println("String array sorted (case insensitive)"); //print sorted elements again for(int i=0; i < strNames.length; i++){ System.out.println(strNames[i]); } } } /* Output of above given Java Sort String Array example would be String array sorted (case sensitive) Bob Chris John Mark alex williams String array sorted (case insensitive) Bob Chris John Mark alex williams */ |
Your “case insensitive” code is actually case sensitive.
Arrays.sort(strNames, String.CASE_INSENSITIVE_ORDER)
Use this, as he have mentioned in comments.
Why is Alex not at index 1., i.e, before Bob in sorted array. ?
How would i sort this in descending order?