java集合问题list和map

问题遇到的现象和发生

没学过java,学了几天有个题目,尝试写了一下,求解惑

用代码块功能插入代码,请勿粘贴截图

package demo4;

import java.util.*;

public class test1 {

public static void main(String[] args) {
    // TODO 自动生成的方法存根
    var sc = new Scanner(System.in); //生成scanner对象        
    System.out.println("请输入:");
    String name = sc.nextLine();//输入字符串
     if ( name =="国家"){
         List<String> 国家 = new ArrayList<>(); //创建集合对象
            国家.add("富强"); //向集合添加元素
            国家.add("民主");
            国家.add("文明");
            国家.add("和谐");
            int i=(int)(Math.random()*国家.size()); //获得 0~3的随机数
         System.out.println("国家:" + 国家.get(i));         
     }
                
}

}
[](
))

运行结果及报错内容

请输入:
国家

我想要达到的结果:

img


如图,输入国家社会个人三个其中之一,随机输出后面四个其中一个。list和map结合


    public static void main(String[] args) {
        List<String> country=Arrays.asList("富强","民主","文明","和谐");//国家
        List<String> society=Arrays.asList("自由","平等","公正","法治");//社会
        List<String> citizen=Arrays.asList("爱国","敬业","诚信","友善");//公民

        Map<String, List<String>> map=new HashMap<>();
        map.put("国家",country);
        map.put("社会",society);
        map.put("公民",citizen);

        while (true){
            System.out.println("请输入");
            String name = new Scanner(System.in).nextLine();
            if(!map.containsKey(name)){
                System.out.println("输入错误");
            }
            List<String> list = map.get(name);
            int index = new Random().nextInt(list.size());
            System.out.println(list.get(index));
        }
    }

string比较用equals,不能用==,变量声明最好还是英文,中文太不规范了

List 国家 = new ArrayList<>(); 变量名要用英文!