Type mismatch: cannot convert from element type Object to String 解決辦法

首先放上個人源碼,看看你的代碼是否是我這個相似的。

 1 @Test  2     void predicateTest() throws Exception {  3         List<String> languages = Arrays.asList("Java", "Scala", "C++", "Haskell", "Lisp");  4         System.out.println("Languages which starts with J :");  5         filter(languages, (str) -> ((String) str).startsWith("J"));  6         System.out.println("Languages which ends with a ");  7         filter(languages, (str) -> ((String) str).endsWith("a"));  8         System.out.println("Print all languages :");  9         filter(languages, (str) -> true); 10         System.out.println("Print no language : "); 11         filter(languages, (str) -> false); 12         System.out.println("Print language whose length greater than 4:"); 13         filter(languages, (str) -> ((String) str).length() > 4); 14  } 15 
16     public static void filter(List names, Predicate condition) { 17         for (String name : names) { 18             if (condition.test(name)) { 19                 System.out.println(name + " "); 20  } 21  } 22     }

存在問題截圖

解決辦法

相關文章
相關標籤/搜索