2014-10-09 22 views
6

Khi tôi cố gắng sử dụng cụm từ value -> value Tôi nhận được thông báo cho biết rằng Lambda không được hỗ trợ. Tôi hiện đang sử dụng 1.8 JDK với hỗ trợ Lambda, nhưng tôi vẫn nhận được lỗi. Tôi đoán là IntelliJ 13.1.4 nhưng tôi không tích cực.Java IntelliJ 13.1.4 "Biểu thức lambda không được hỗ trợ ở cấp độ ngôn ngữ này".

public static void grades(){ 
    final List<Integer> grade = new ArrayList<Integer>(); 
    int gradelistnumber = 1; 
    int inputedgrade = 0; 

    while(inputedgrade != -1){ 
     System.out.println("Enter Grade for student " + gradelistnumber + " (1-50): "); 
     inputedgrade = sc.nextInt(); 
     grade.add(inputedgrade); 
     gradelistnumber++; 


    } 

    System.out.println("Class Average: " + System.out.println(grade.stream().mapToInt(value -> value /*error*/).sum())); 
    } 

} 
+0

Nó nên nói số phiên bản Intellij của bạn trên thanh tiêu đề ứng dụng. Nếu không, bạn có thể tìm thấy nó trong 'Help -> About' –

Trả lời

16

Ngoài để File > Project Structure > Project > Project Language Level như khác có đề cập đến,
bạn cũng nên kiểm tra File > Project Structure > **Modules** > Sources > Project Language Level và thiết lập để 8

8

Đến

File > Project Structure > Project > Project Language Level 

Kiểm tra nếu nó là 8,0

3

Bên cạnh mức độ ngôn ngữ sai dòng mã này cũng có lỗi biên dịch (các nhà điều hành + không thể được áp dụng cho void trả về bởi System.out.println).

System.out.println("Class Average: " + System.out.println(grade.stream().mapToInt(value -> value /*error*/).sum())); 

Thay đổi nó để:

System.out.println("Class Average: " + grade.stream().mapToInt(value -> value).sum()); 

Và như đối với trình độ ngoại ngữ, bạn có thể thay đổi nó một cách dễ dàng hơn một chút so với đi vào Cấu trúc dự án menu. Chỉ cần xác định vị trí con trỏ đến một phần của mã đó cho thấy lỗi, nhấn ALT + ENTER và chọn Set mức ngôn ngữ để 8,0

Đây là nói chung là một điều tốt để giữ trong tâm trí, bởi vì trong IntelliJ bạn có thể dễ dàng giải quyết rất nhiều cảnh báo và lỗi từ trình đơn số ALT + ENTER.

3

Fix maven biên dịch Plugin nếu bạn xây dựng dự án của bạn với pom.xml

</dependencies> 
    <build> 
     <finalName>SnmpAgentExample</finalName> 
     <plugins> 
      <plugin> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <configuration> 
        <source>1.8</source> 
        <target>1.8</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

Cùng thể được thực hiện với gradle với properties này:

compileJava.sourceCompatibility 
compileJava.targetCompatibility 

Và cũng kiểm tra như đã đề cập trước đó.

File> Cấu trúc dự án> Dự án> Dự án Ngôn Ngữ Cấp

+0

điều này làm việc cho tôi, rực rỡ –

Các vấn đề liên quan