我的示例字符串是“ D + 1”

我将其转换为字符数组

我想对它们进行排序,使其以ASCII样式显示,因此它应为{'+','1','D'}

然后,我可以手动将运算符“ +”移动到所需位置的中间,因此当我将其转换回字符串时,它变为“ 1 + D”

Arrays.sort()在这种情况下不起作用,有无处不在的修复程序吗?

这将使我不必在哈希映射中输入大量条目

if (comp.length()>2)
    {
        char[] compChars = comp.toCharArray();

        boolean exit = false;
        if (compChars[1] == '-')
            exit = true;

        // if there is no subtraction
        if (!exit) {

            // TODO: fix
            Arrays.sort(compChars);
            char temp = compChars[0];
            compChars[0] = compChars[1];
            compChars[1] = temp;

            comp = String.valueOf(comp);

        }

    }

最佳答案

对我来说,您的示例对于“ D + 1”非常有效。唯一的错误是您需要在最后一行
comp = String.valueOf(compChars);

关于java - 将Arrays.sort()用于非字母字符,例如{'+''1''D'},我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58444317/

10-11 19:42