Java collections sort method for string is not working properly for case sensitive and special characters












18















I was working on sorting a list of String in Java (1.8) and came to know that it is not working as expected!



I am trying the following code for sorting:



private Set<String> getTestData() {
Set<String> compRoles = new HashSet<>();
compRoles.add("AA");
compRoles.add("Aa");
compRoles.add("aA");
compRoles.add("aa");
compRoles.add("11");
compRoles.add("117");
compRoles.add("12");
compRoles.add("21");
compRoles.add("!@");
compRoles.add("@!");
compRoles.add("@@!");
compRoles.add("BB");
compRoles.add("Bb");
compRoles.add("bb");
return compRoles;
}

public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
Collections.sort(test);
System.out.println(test);
}


Before sort: [AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]



After sort: [!@, 11, 117, 12, 21, @!, @@!, AA, Aa, BB, Bb, aA, aa, bb]



My expectation is: [!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]



Do I need to use something else other that natural sort for this?










share|improve this question




















  • 13





    so, for you 'a' comes before 'A' .. ok. well, you'll need to write your own sorting logic, but it 'll be pretty broad. you'll actually have to compare char by char. good luck.

    – Stultuske
    Mar 18 at 7:19






  • 8





    The answer is in the question. Given that the natural ordering doesn't order elements as you would like to, you need something else.

    – JB Nizet
    Mar 18 at 7:19













  • This is already implemented in jQuery sort. datatables.net/examples/styling/bootstrap4 But I don't the the algo they are using! Because of this UI and back-end is not in sync. Any idea on this?

    – Prabal Srivastava
    Mar 18 at 7:26






  • 1





    The unicode of ! is smaller than that of @ , unicode of @ is small than 1, unicode of 1 is smaller than A, uncicode of A is smaller than a. Hope it answers for the output that you get. Now If you need sorting as per your ordering , implement your comparator.

    – nits.kk
    Mar 18 at 8:36











  • @nits.kk: I am totally agree with the answer given by jaspreet. We can solve this issue by using docs.oracle.com/javase/7/docs/api/java/text/Collator.html

    – Prabal Srivastava
    Mar 18 at 9:14
















18















I was working on sorting a list of String in Java (1.8) and came to know that it is not working as expected!



I am trying the following code for sorting:



private Set<String> getTestData() {
Set<String> compRoles = new HashSet<>();
compRoles.add("AA");
compRoles.add("Aa");
compRoles.add("aA");
compRoles.add("aa");
compRoles.add("11");
compRoles.add("117");
compRoles.add("12");
compRoles.add("21");
compRoles.add("!@");
compRoles.add("@!");
compRoles.add("@@!");
compRoles.add("BB");
compRoles.add("Bb");
compRoles.add("bb");
return compRoles;
}

public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
Collections.sort(test);
System.out.println(test);
}


Before sort: [AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]



After sort: [!@, 11, 117, 12, 21, @!, @@!, AA, Aa, BB, Bb, aA, aa, bb]



My expectation is: [!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]



Do I need to use something else other that natural sort for this?










share|improve this question




















  • 13





    so, for you 'a' comes before 'A' .. ok. well, you'll need to write your own sorting logic, but it 'll be pretty broad. you'll actually have to compare char by char. good luck.

    – Stultuske
    Mar 18 at 7:19






  • 8





    The answer is in the question. Given that the natural ordering doesn't order elements as you would like to, you need something else.

    – JB Nizet
    Mar 18 at 7:19













  • This is already implemented in jQuery sort. datatables.net/examples/styling/bootstrap4 But I don't the the algo they are using! Because of this UI and back-end is not in sync. Any idea on this?

    – Prabal Srivastava
    Mar 18 at 7:26






  • 1





    The unicode of ! is smaller than that of @ , unicode of @ is small than 1, unicode of 1 is smaller than A, uncicode of A is smaller than a. Hope it answers for the output that you get. Now If you need sorting as per your ordering , implement your comparator.

    – nits.kk
    Mar 18 at 8:36











  • @nits.kk: I am totally agree with the answer given by jaspreet. We can solve this issue by using docs.oracle.com/javase/7/docs/api/java/text/Collator.html

    – Prabal Srivastava
    Mar 18 at 9:14














18












18








18


4






I was working on sorting a list of String in Java (1.8) and came to know that it is not working as expected!



I am trying the following code for sorting:



private Set<String> getTestData() {
Set<String> compRoles = new HashSet<>();
compRoles.add("AA");
compRoles.add("Aa");
compRoles.add("aA");
compRoles.add("aa");
compRoles.add("11");
compRoles.add("117");
compRoles.add("12");
compRoles.add("21");
compRoles.add("!@");
compRoles.add("@!");
compRoles.add("@@!");
compRoles.add("BB");
compRoles.add("Bb");
compRoles.add("bb");
return compRoles;
}

public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
Collections.sort(test);
System.out.println(test);
}


Before sort: [AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]



After sort: [!@, 11, 117, 12, 21, @!, @@!, AA, Aa, BB, Bb, aA, aa, bb]



My expectation is: [!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]



Do I need to use something else other that natural sort for this?










share|improve this question
















I was working on sorting a list of String in Java (1.8) and came to know that it is not working as expected!



I am trying the following code for sorting:



private Set<String> getTestData() {
Set<String> compRoles = new HashSet<>();
compRoles.add("AA");
compRoles.add("Aa");
compRoles.add("aA");
compRoles.add("aa");
compRoles.add("11");
compRoles.add("117");
compRoles.add("12");
compRoles.add("21");
compRoles.add("!@");
compRoles.add("@!");
compRoles.add("@@!");
compRoles.add("BB");
compRoles.add("Bb");
compRoles.add("bb");
return compRoles;
}

public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
Collections.sort(test);
System.out.println(test);
}


Before sort: [AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]



After sort: [!@, 11, 117, 12, 21, @!, @@!, AA, Aa, BB, Bb, aA, aa, bb]



My expectation is: [!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]



Do I need to use something else other that natural sort for this?







java sorting collections






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 18 at 16:29









Peter Mortensen

13.8k1987113




13.8k1987113










asked Mar 18 at 7:16









Prabal SrivastavaPrabal Srivastava

218310




218310








  • 13





    so, for you 'a' comes before 'A' .. ok. well, you'll need to write your own sorting logic, but it 'll be pretty broad. you'll actually have to compare char by char. good luck.

    – Stultuske
    Mar 18 at 7:19






  • 8





    The answer is in the question. Given that the natural ordering doesn't order elements as you would like to, you need something else.

    – JB Nizet
    Mar 18 at 7:19













  • This is already implemented in jQuery sort. datatables.net/examples/styling/bootstrap4 But I don't the the algo they are using! Because of this UI and back-end is not in sync. Any idea on this?

    – Prabal Srivastava
    Mar 18 at 7:26






  • 1





    The unicode of ! is smaller than that of @ , unicode of @ is small than 1, unicode of 1 is smaller than A, uncicode of A is smaller than a. Hope it answers for the output that you get. Now If you need sorting as per your ordering , implement your comparator.

    – nits.kk
    Mar 18 at 8:36











  • @nits.kk: I am totally agree with the answer given by jaspreet. We can solve this issue by using docs.oracle.com/javase/7/docs/api/java/text/Collator.html

    – Prabal Srivastava
    Mar 18 at 9:14














  • 13





    so, for you 'a' comes before 'A' .. ok. well, you'll need to write your own sorting logic, but it 'll be pretty broad. you'll actually have to compare char by char. good luck.

    – Stultuske
    Mar 18 at 7:19






  • 8





    The answer is in the question. Given that the natural ordering doesn't order elements as you would like to, you need something else.

    – JB Nizet
    Mar 18 at 7:19













  • This is already implemented in jQuery sort. datatables.net/examples/styling/bootstrap4 But I don't the the algo they are using! Because of this UI and back-end is not in sync. Any idea on this?

    – Prabal Srivastava
    Mar 18 at 7:26






  • 1





    The unicode of ! is smaller than that of @ , unicode of @ is small than 1, unicode of 1 is smaller than A, uncicode of A is smaller than a. Hope it answers for the output that you get. Now If you need sorting as per your ordering , implement your comparator.

    – nits.kk
    Mar 18 at 8:36











  • @nits.kk: I am totally agree with the answer given by jaspreet. We can solve this issue by using docs.oracle.com/javase/7/docs/api/java/text/Collator.html

    – Prabal Srivastava
    Mar 18 at 9:14








13




13





so, for you 'a' comes before 'A' .. ok. well, you'll need to write your own sorting logic, but it 'll be pretty broad. you'll actually have to compare char by char. good luck.

– Stultuske
Mar 18 at 7:19





so, for you 'a' comes before 'A' .. ok. well, you'll need to write your own sorting logic, but it 'll be pretty broad. you'll actually have to compare char by char. good luck.

– Stultuske
Mar 18 at 7:19




8




8





The answer is in the question. Given that the natural ordering doesn't order elements as you would like to, you need something else.

– JB Nizet
Mar 18 at 7:19







The answer is in the question. Given that the natural ordering doesn't order elements as you would like to, you need something else.

– JB Nizet
Mar 18 at 7:19















This is already implemented in jQuery sort. datatables.net/examples/styling/bootstrap4 But I don't the the algo they are using! Because of this UI and back-end is not in sync. Any idea on this?

– Prabal Srivastava
Mar 18 at 7:26





This is already implemented in jQuery sort. datatables.net/examples/styling/bootstrap4 But I don't the the algo they are using! Because of this UI and back-end is not in sync. Any idea on this?

– Prabal Srivastava
Mar 18 at 7:26




1




1





The unicode of ! is smaller than that of @ , unicode of @ is small than 1, unicode of 1 is smaller than A, uncicode of A is smaller than a. Hope it answers for the output that you get. Now If you need sorting as per your ordering , implement your comparator.

– nits.kk
Mar 18 at 8:36





The unicode of ! is smaller than that of @ , unicode of @ is small than 1, unicode of 1 is smaller than A, uncicode of A is smaller than a. Hope it answers for the output that you get. Now If you need sorting as per your ordering , implement your comparator.

– nits.kk
Mar 18 at 8:36













@nits.kk: I am totally agree with the answer given by jaspreet. We can solve this issue by using docs.oracle.com/javase/7/docs/api/java/text/Collator.html

– Prabal Srivastava
Mar 18 at 9:14





@nits.kk: I am totally agree with the answer given by jaspreet. We can solve this issue by using docs.oracle.com/javase/7/docs/api/java/text/Collator.html

– Prabal Srivastava
Mar 18 at 9:14












2 Answers
2






active

oldest

votes


















30














You can use the Collator class of Java.



public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
test.sort(Collator.getInstance(Locale.ENGLISH));
System.out.println(test);
}


Output:-



[AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]
[!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]





share|improve this answer





















  • 1





    Thanks alot (y)

    – Prabal Srivastava
    Mar 18 at 8:42






  • 3





    Now days the List class has its own sort method, so going through is an unnecessary step. It is a little bit clearer to write the code like this: list.sort(Collator.getInstance(Locale.ENGLISH));.

    – Lii
    Mar 18 at 11:07











  • Thanks @Lii . Updated the answer. I didn't read he was working in Java 8 so answered Collections.sort instead of list.sort

    – Jaspreet Jolly
    Mar 18 at 11:27






  • 2





    It not always clear what Java version to target in our answers. But Java 8 has been out almost 5 years now! I think we can safely assume that that is the standard. Now days you can even declare your list like this: var test = new ArrayList<>(new Test().getTestData());

    – Lii
    Mar 18 at 11:51





















2














You could create a custom comparator for your sorting logics. After this you can use it like this:



Collections.sort(yourArrayList, new YourComparator());





share|improve this answer
























  • Appropriate your answer. I know the use of comparator and comparable. I am looking for the logic or algorithm used behind this.

    – Prabal Srivastava
    Mar 18 at 7:29








  • 1





    Then you question should look like you need a custom comparator, and should contain question about sorting algortims. The easiest way is to have weights for each letter and compare them in your way.

    – ipave
    Mar 18 at 7:34











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55216244%2fjava-collections-sort-method-for-string-is-not-working-properly-for-case-sensiti%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









30














You can use the Collator class of Java.



public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
test.sort(Collator.getInstance(Locale.ENGLISH));
System.out.println(test);
}


Output:-



[AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]
[!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]





share|improve this answer





















  • 1





    Thanks alot (y)

    – Prabal Srivastava
    Mar 18 at 8:42






  • 3





    Now days the List class has its own sort method, so going through is an unnecessary step. It is a little bit clearer to write the code like this: list.sort(Collator.getInstance(Locale.ENGLISH));.

    – Lii
    Mar 18 at 11:07











  • Thanks @Lii . Updated the answer. I didn't read he was working in Java 8 so answered Collections.sort instead of list.sort

    – Jaspreet Jolly
    Mar 18 at 11:27






  • 2





    It not always clear what Java version to target in our answers. But Java 8 has been out almost 5 years now! I think we can safely assume that that is the standard. Now days you can even declare your list like this: var test = new ArrayList<>(new Test().getTestData());

    – Lii
    Mar 18 at 11:51


















30














You can use the Collator class of Java.



public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
test.sort(Collator.getInstance(Locale.ENGLISH));
System.out.println(test);
}


Output:-



[AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]
[!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]





share|improve this answer





















  • 1





    Thanks alot (y)

    – Prabal Srivastava
    Mar 18 at 8:42






  • 3





    Now days the List class has its own sort method, so going through is an unnecessary step. It is a little bit clearer to write the code like this: list.sort(Collator.getInstance(Locale.ENGLISH));.

    – Lii
    Mar 18 at 11:07











  • Thanks @Lii . Updated the answer. I didn't read he was working in Java 8 so answered Collections.sort instead of list.sort

    – Jaspreet Jolly
    Mar 18 at 11:27






  • 2





    It not always clear what Java version to target in our answers. But Java 8 has been out almost 5 years now! I think we can safely assume that that is the standard. Now days you can even declare your list like this: var test = new ArrayList<>(new Test().getTestData());

    – Lii
    Mar 18 at 11:51
















30












30








30







You can use the Collator class of Java.



public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
test.sort(Collator.getInstance(Locale.ENGLISH));
System.out.println(test);
}


Output:-



[AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]
[!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]





share|improve this answer















You can use the Collator class of Java.



public static void main(String args) {
List<String> test = new ArrayList<>(new Test().getTestData());
System.out.println(test);
test.sort(Collator.getInstance(Locale.ENGLISH));
System.out.println(test);
}


Output:-



[AA, Aa, aA, aa, 11, BB, Bb, bb, 12, @!, @@!, 117, 21, !@]
[!@, @!, @@!, 11, 117, 12, 21, aa, aA, Aa, AA, bb, Bb, BB]






share|improve this answer














share|improve this answer



share|improve this answer








edited Mar 18 at 11:24

























answered Mar 18 at 7:36









Jaspreet JollyJaspreet Jolly

814522




814522








  • 1





    Thanks alot (y)

    – Prabal Srivastava
    Mar 18 at 8:42






  • 3





    Now days the List class has its own sort method, so going through is an unnecessary step. It is a little bit clearer to write the code like this: list.sort(Collator.getInstance(Locale.ENGLISH));.

    – Lii
    Mar 18 at 11:07











  • Thanks @Lii . Updated the answer. I didn't read he was working in Java 8 so answered Collections.sort instead of list.sort

    – Jaspreet Jolly
    Mar 18 at 11:27






  • 2





    It not always clear what Java version to target in our answers. But Java 8 has been out almost 5 years now! I think we can safely assume that that is the standard. Now days you can even declare your list like this: var test = new ArrayList<>(new Test().getTestData());

    – Lii
    Mar 18 at 11:51
















  • 1





    Thanks alot (y)

    – Prabal Srivastava
    Mar 18 at 8:42






  • 3





    Now days the List class has its own sort method, so going through is an unnecessary step. It is a little bit clearer to write the code like this: list.sort(Collator.getInstance(Locale.ENGLISH));.

    – Lii
    Mar 18 at 11:07











  • Thanks @Lii . Updated the answer. I didn't read he was working in Java 8 so answered Collections.sort instead of list.sort

    – Jaspreet Jolly
    Mar 18 at 11:27






  • 2





    It not always clear what Java version to target in our answers. But Java 8 has been out almost 5 years now! I think we can safely assume that that is the standard. Now days you can even declare your list like this: var test = new ArrayList<>(new Test().getTestData());

    – Lii
    Mar 18 at 11:51










1




1





Thanks alot (y)

– Prabal Srivastava
Mar 18 at 8:42





Thanks alot (y)

– Prabal Srivastava
Mar 18 at 8:42




3




3





Now days the List class has its own sort method, so going through is an unnecessary step. It is a little bit clearer to write the code like this: list.sort(Collator.getInstance(Locale.ENGLISH));.

– Lii
Mar 18 at 11:07





Now days the List class has its own sort method, so going through is an unnecessary step. It is a little bit clearer to write the code like this: list.sort(Collator.getInstance(Locale.ENGLISH));.

– Lii
Mar 18 at 11:07













Thanks @Lii . Updated the answer. I didn't read he was working in Java 8 so answered Collections.sort instead of list.sort

– Jaspreet Jolly
Mar 18 at 11:27





Thanks @Lii . Updated the answer. I didn't read he was working in Java 8 so answered Collections.sort instead of list.sort

– Jaspreet Jolly
Mar 18 at 11:27




2




2





It not always clear what Java version to target in our answers. But Java 8 has been out almost 5 years now! I think we can safely assume that that is the standard. Now days you can even declare your list like this: var test = new ArrayList<>(new Test().getTestData());

– Lii
Mar 18 at 11:51







It not always clear what Java version to target in our answers. But Java 8 has been out almost 5 years now! I think we can safely assume that that is the standard. Now days you can even declare your list like this: var test = new ArrayList<>(new Test().getTestData());

– Lii
Mar 18 at 11:51















2














You could create a custom comparator for your sorting logics. After this you can use it like this:



Collections.sort(yourArrayList, new YourComparator());





share|improve this answer
























  • Appropriate your answer. I know the use of comparator and comparable. I am looking for the logic or algorithm used behind this.

    – Prabal Srivastava
    Mar 18 at 7:29








  • 1





    Then you question should look like you need a custom comparator, and should contain question about sorting algortims. The easiest way is to have weights for each letter and compare them in your way.

    – ipave
    Mar 18 at 7:34
















2














You could create a custom comparator for your sorting logics. After this you can use it like this:



Collections.sort(yourArrayList, new YourComparator());





share|improve this answer
























  • Appropriate your answer. I know the use of comparator and comparable. I am looking for the logic or algorithm used behind this.

    – Prabal Srivastava
    Mar 18 at 7:29








  • 1





    Then you question should look like you need a custom comparator, and should contain question about sorting algortims. The easiest way is to have weights for each letter and compare them in your way.

    – ipave
    Mar 18 at 7:34














2












2








2







You could create a custom comparator for your sorting logics. After this you can use it like this:



Collections.sort(yourArrayList, new YourComparator());





share|improve this answer













You could create a custom comparator for your sorting logics. After this you can use it like this:



Collections.sort(yourArrayList, new YourComparator());






share|improve this answer












share|improve this answer



share|improve this answer










answered Mar 18 at 7:24









ipaveipave

19610




19610













  • Appropriate your answer. I know the use of comparator and comparable. I am looking for the logic or algorithm used behind this.

    – Prabal Srivastava
    Mar 18 at 7:29








  • 1





    Then you question should look like you need a custom comparator, and should contain question about sorting algortims. The easiest way is to have weights for each letter and compare them in your way.

    – ipave
    Mar 18 at 7:34



















  • Appropriate your answer. I know the use of comparator and comparable. I am looking for the logic or algorithm used behind this.

    – Prabal Srivastava
    Mar 18 at 7:29








  • 1





    Then you question should look like you need a custom comparator, and should contain question about sorting algortims. The easiest way is to have weights for each letter and compare them in your way.

    – ipave
    Mar 18 at 7:34

















Appropriate your answer. I know the use of comparator and comparable. I am looking for the logic or algorithm used behind this.

– Prabal Srivastava
Mar 18 at 7:29







Appropriate your answer. I know the use of comparator and comparable. I am looking for the logic or algorithm used behind this.

– Prabal Srivastava
Mar 18 at 7:29






1




1





Then you question should look like you need a custom comparator, and should contain question about sorting algortims. The easiest way is to have weights for each letter and compare them in your way.

– ipave
Mar 18 at 7:34





Then you question should look like you need a custom comparator, and should contain question about sorting algortims. The easiest way is to have weights for each letter and compare them in your way.

– ipave
Mar 18 at 7:34


















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55216244%2fjava-collections-sort-method-for-string-is-not-working-properly-for-case-sensiti%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Biblatex bibliography style without URLs when DOI exists (in Overleaf with Zotero bibliography)

ComboBox Display Member on multiple fields

Is it possible to collect Nectar points via Trainline?