[java基础] 遇到的一个关于返回值泛型的问题

在写代码的时候这样写:

 1 import java.util.ArrayList;
 2 import java.util.List;
 3 
 4 public class TestConversion {
 5     public static void main(String[] args)
 6     {
 7         List<String> strList = getStringList();
 8         System.out.println(strList.contains("400036"));
 9     }
10     
11     @SuppressWarnings("unchecked")
12     private static List<String> getStringList()
13     {
14         List list = new ArrayList();
15         list.add(400036);
16         list.add("b");
17         return list;
18     }
19 }

会得到结果:false

起初是这么想的:getStringList()返回的是List<String>,那么strList的里面必定是String的集合,所以应该打印出"true",那为什么是false呢?
原文地址:https://www.cnblogs.com/simple-code/p/4576999.html