【问题标题】:Error Trying to Add a List that is Implemented into an IF Statement尝试添加在 IF 语句中实现的列表时出错
【发布时间】:2020-02-03 19:52:38
【问题描述】:

我正在尝试添加一个列表,以便在特定事件发生后打印一行文本。这是我在第 6 行遇到的错误。

错误:标记“

import java.util.Scanner;

public class RelativelyPrime {
  public static void main(String[] args) {
    Scanner scnr = new Scanner(System.in);  
    List<Integer> list = new ArrayList<>();
    
    int num1 = scnr.nextInt();
    int num2 = scnr.nextInt();
    System.out.println("Common divisors of " + num1 + " and " + num2 + ":");
    for(int i = 1; i<= Math.min(num1,num2); i++){
      if(num1%i==0 && num2%i==0) {
        System.out.println(i);
        list.add(i);
      }
    }
    if (list.size()<2){
      System.out.print(num1 + " and " + num2 + " are relatively prime.");  
    }
    else {
      System.out.print(num1 + " and " + num2 + " are not relatively prime.");
    }
  }
}

【问题讨论】:

  • 也许您还应该导入ListArrayList?您可能会更改为import java.util.*;。然后它对我有用,但我之前没有遇到同样的错误。你的版本是什么?这有帮助吗?
  • 我试过 import java.util.*;它仍然没有工作。我正在使用 drjava IDE。
  • IDE 应该没有那么重要。你的 java 版本是什么?试试List&lt;Integer&gt; list = new ArrayList&lt;Integer&gt;(); 或许

标签: java list compiler-errors syntax-error


【解决方案1】:

看起来您正在使用 Java 6,或者至少正在使用不支持菱形 (&lt;&gt;) 语法的 Java 6 语言级别进行编译。

如果您至少可以将其升级到 Java 7(或其语言级别),那么您可能应该这样做。如果不能这样做,则必须在 ArrayList 构造函数中重复通用规范:

List<Integer> list = new ArrayList<Integer>();
// Here ---------------------------^

【讨论】:

  • 很好地抓住了那个错字@dreamcrash,感谢您的编辑
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-29
  • 2022-11-21
  • 1970-01-01
  • 2012-03-21
  • 1970-01-01
  • 1970-01-01
  • 2013-10-18
相关资源
最近更新 更多