请问这个为什么不执行输出

import java.util.Arrays;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int[] arr = new int[3];
        for (int i = 0; i < 3; i++) {
            arr[i] = sc.nextInt();
        }
        Arrays.sort(arr);
        String s = sc.next();
        if(s == "ABC") System.out.println(arr[0]+" "+arr[1]+" "+arr[2]);
        if(s == "ACB") System.out.println(arr[0]+" "+arr[2]+" "+arr[1]);
        if(s == "BAC") System.out.println(arr[1]+" "+arr[0]+" "+arr[2]);
        if(s == "BCA") System.out.println(arr[1]+" "+arr[2]+" "+arr[0]);
        if(s == "CAB") System.out.println(arr[2]+" "+arr[0]+" "+arr[1]);
        if(s == "CBA") System.out.println(arr[2]+" "+arr[1]+" "+arr[0]);
        sc.close();
    }
}

比较字符串是否相等,需要使用 equals() 方法,而不是== ,所以没有输出。

改成 s.equals("ABC")试试呢?字符判断相等使用 equals而不是==

img

==这个判断的是地址是否相同
equals()方法判断的才是内容是否相同

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^