Java 如何实现考虑“的字符串比较器”-&引用;“之后的符号”;z";信

Java 如何实现考虑“的字符串比较器”-&引用;“之后的符号”;z";信,java,postgresql,sorting,special-characters,Java,Postgresql,Sorting,Special Characters,我有以下代码: List<String> stringList = new ArrayList<>(); stringList.add("VasyaPetrov"); stringList.add("Vasya_Petrov"); stringList.add("Vasyapetrov"); List<String> sortedCollection = stringList .s

我有以下代码:

List<String> stringList  = new ArrayList<>();
stringList.add("VasyaPetrov");
stringList.add("Vasya_Petrov");
stringList.add("Vasyapetrov");

List<String> sortedCollection = stringList
        .stream()
        .sorted(String::compareToIgnoreCase)
        .collect((Collectors.toList()));
System.out.println(sortedCollection);
所以比较器将
视为任何字母前的符号

Postgres
orderby
\uu
视为任何字母后面的符号

这是我考试失败的根本原因

我想让我的测试顺利进行

  • 有没有办法更改字符串比较器中具体符号的符号代码?
  • 有没有办法更改postgres订单中具体符号的符号代码?

  • p.S。我在
    Comparator
    接口中看到了类似
    nullsFirst
    的方法。我需要这样的smth,但对于Java中的“”

    ,您可以在末尾使用
    \ucode>符号创建自己的smth,并将其用作比较器,例如:

    String rules=“
    那么结果将是:

    [Vasyapetrov, VasyaPetrov, Vasya_Petrov]
    

    在Java中,您可以在末尾创建自己的
    \ucode>符号,并将其用作比较器,例如:

    String rules=“
    那么结果将是:

    [Vasyapetrov, VasyaPetrov, Vasya_Petrov]
    

    你需要Java解决方案还是SQL(Postgres)解决方案?@a_horse_和_no_name实际上我想要两者我是否正确理解你将数据排序作为测试设置的一部分,然后与你从PostgreSQL获得的数据进行比较?然后,解决方案可能不是对数据进行排序,而是提供已经手动排序的数据。一个好的实践是避免测试设置中的复杂逻辑。我会记住这个解决方案,你需要Java解决方案还是SQL(Postgres)解决方案?@a_horse_和_no_name实际上我想要这两种解决方案。我是否正确理解,你将数据排序作为测试设置的一部分,然后将它们与你从PostgreSQL获得的数据进行比较?然后,解决方案可能不是对数据进行排序,而是提供已经手动排序的数据。一个好的实践是避免测试设置中的复杂逻辑。我将把这个解决方案保存在MindInterest代码中,但它与默认的不同之处在于它不仅替换了“\u”有趣的代码,而且它与默认的不同之处在于它不仅替换了“\u”