Java 游戏字符串的顺序数组

Java 游戏字符串的顺序数组,java,Java,声明 游戏包括对他们提供给你的元素进行排序。共有8个元件和2个孔 您必须对其进行排序,以及无序数组何时与任何可能选项匹配的方法 唯一的限制是您必须将其排序为2乘2,也就是说,在每次迭代中,您必须同时移动两个元素 我的代码: boolean truee; ArrayList<String> array = new ArrayList<String>(10); array.add(0, "A"); array.add(1, &qu

声明 游戏包括对他们提供给你的元素进行排序。共有8个元件和2个孔

您必须对其进行排序,以及无序数组何时与任何可能选项匹配的方法

唯一的限制是您必须将其排序为2乘2,也就是说,在每次迭代中,您必须同时移动两个元素

我的代码:

boolean  truee;
    ArrayList<String> array = new ArrayList<String>(10);
    array.add(0, "A");
    array.add(1, "B");
    array.add(2, "A");
    array.add(3, "B");
    array.add(4, "A");
    array.add(5, "B");
    array.add(6, "A");
    array.add(7, "B");
    array.add(8, null);
    array.add(9, null);

    System.out.print(array);
}

private static ArrayList<String> order(ArrayList<String> array) {
    boolean istrue = true;
    
    //...States
    do {
        
    }while(istrue);
    
    return array;
}

在这种情况下,您可以受益于
java.util.Comparator
类。要按您希望的方式对其进行排序,首先必须使用以下函数处理空值:
Comparator.nullsFirst(…)
-它会将空值移动到列表的第一位。但它会给你一个自然的秩序。您的预期结果需要还原,因此下一步将使用
Comparator.reverseOrder()
函数-它将使“B”位于“a”之前。 要使用所描述的运算符,请调用列表中的
排序方法

用法示例:

list.sort(Comparator.nullsFirst(Comparator.reverseOrder()));

在描述中,您刚刚粘贴了逻辑的模板,因为排序似乎不完整。请尝试至少完成排序,然后检查结果是否如您预期的那样。如果不是,则使用调试器解决该问题。如果这对你没有帮助,那么就这样寻找答案。不要期望有人会向您发送完整的解决方案。@marcin.programuje我正在尝试对其进行编程,但我无法想象它。我知道如何在纸上解决它,但不是通过编程。我已经更改了语句,并将我的解决方案写在纸上。我不知道如何通过同时获取两个元素来执行命令我arraylist的函数。Java代码中的null是否表示您论文中的
0
list.sort(Comparator.nullsFirst(Comparator.reverseOrder()));