穷举所有场景

import java.util.Scanner;
import java.util.Map;
import java.util.HashMap;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            String[] str = in.nextLine().split("-");
            System.out.println(findBig(str));
        }
    }
    public static String findBig(String[] str) {
        Map<String, Integer> map = new HashMap<>();
        map.put("3", 3);
        map.put("4", 4);
        map.put("5", 5);
        map.put("6", 6);
        map.put("7", 7);
        map.put("8", 8);
        map.put("9", 9);
        map.put("10", 10);
        map.put("J", 11);
        map.put("Q", 12);
        map.put("k", 13);
        map.put("A", 14);
        map.put("2", 15);
        map.put("joker", 16);
        map.put("JOKER", 17);
        String[] str1Array = str[0].split(" ");
        String[] str2Array = str[1].split(" ");
        if (str1Array.length == 2 && "joker".equals(str1Array[0])) return str[0];
        if (str2Array.length == 2 && "joker".equals(str2Array[0])) return str[1];
        if (str1Array.length == 4 && str2Array.length != 4) return str[0];
        if (str2Array.length == 4 && str1Array.length != 4) return str[1];
        
        if (str1Array.length == 1 && str2Array.length == 1) return map.get(str1Array[0]) > map.get(str2Array[0]) ? str[0] : str[1];
        if (str1Array.length == 2 && str2Array.length == 2) return map.get(str1Array[0]) > map.get(str2Array[0]) ? str[0] : str[1];
        if (str1Array.length == 3 && str2Array.length == 3) return map.get(str1Array[0]) > map.get(str2Array[0]) ? str[0] : str[1];
        if (str1Array.length == 4 && str2Array.length == 4) return map.get(str1Array[0]) > map.get(str2Array[0]) ? str[0] : str[1];
        if (str1Array.length == 5 && str2Array.length == 5) return map.get(str1Array[0]) > map.get(str2Array[0]) ? str[0] : str[1];
        return "ERROR";
    }
}