将项目导入另一台计算机时出现编码错误

Posted

技术标签:

【中文标题】将项目导入另一台计算机时出现编码错误【英文标题】:Coding error when importing project to another computer 【发布时间】:2015-03-02 23:54:25 【问题描述】:

我有一个我创建的项目,在家里做时可以完美运行,没有任何错误。但是,当我将项目导入学校的计算机时,我从两个不同的类中得到两个代码错误。

第一个错误

主类

bank.getAccounts().forEach((i,b)->System.out.println(b));

类型 ) 预期的非法开始;

表达式开头非法;预期;

第二个错误

BankProcess 类

bankAccounts.remove(bankAccount.getAccountId(), bankAccount);

没有找到合适的删除方法......

我会这样吗?家用计算机上没有出现此类错误。

package Coursework1;
import java.util.*;

public class Bank 

  //Creates a new treemap in which Bank Accounts will be stored in.
  private TreeMap < Integer, BankAccount > bankAccounts = new TreeMap < Integer, BankAccount > ();

  //This method returns all bank accounts in the treemap.
  public TreeMap < Integer, BankAccount > getAccounts() 
    return bankAccounts;
  

  //This method adds a bank account to the treemap.
  public void setAccounts(TreeMap < Integer, BankAccount > accounts) 
    this.bankAccounts = accounts;
  

  //This method return a bank account using the account number.
  public BankAccount getAccount(Integer accountNumber) 
    return bankAccounts.get(accountNumber);
  

  //This method removes a bank account from the treemap.
  public void removeAccounts(TreeMap < Integer, BankAccount > accounts) 
    this.bankAccounts = accounts;
  

【问题讨论】:

您需要验证两台机器上的Java版本是否相同。 检查JDK是否在两个IDE上的版本相同。 那是因为目标机器有另一个不支持 lambda 表达式的 java 版本。 我怀疑学校计算机使用的是 Java 7 或更早版本。闭包仅在 Java 8 中添加... 【参考方案1】:

据我所知,Java 7 及更早版本不支持像您的 forEach 语句(lambda 表达式)。所以我的猜测是学校计算机没有安装 Java 8。

【讨论】:

好的。我明白。我在家里使用 JDK 8,但在学校使用 JDK 7。我可以更改代码以使其在 JDK 7 上运行吗?它需要彻底改造吗? 您只需要更改“foreach”语句,因为 Java 7 不支持 lambda 表达式。其他一切都应该可以正常工作。如果您没有包含其他 Java 8 特定代码,当然... 我不明白我还能用什么其他表达方式。我一直在通过 Java 8 学习所有编码。如何更改 foreach 语句? 这是在 Java 7 和 Java 8 中使用 foreach 语句的示例:***.com/questions/16635398/… 如果您需要其他帮助,请告诉我。 好的。我明白。但是,我尝试对其进行编码,但遇到了非法表达式错误。 for((i,b) : bank.getAccounts) System.out.println(b);我需要更改属性吗?【参考方案2】:

您在家里使用 sdk8,而您的学校有 sdk7。这就是为什么 sdk7 不支持 sdk8 表达式的原因。

【讨论】:

以上是关于将项目导入另一台计算机时出现编码错误的主要内容,如果未能解决你的问题,请参考以下文章

将数据库导入 PhpMyAdmin 时出现奇怪的错误

将 libgdx 项目导入 Eclipse 时出现 Gradle 错误

将flutter项目导入MacOS并运行时出现Info.plist错误

将 Android 项目导入 Eclipse 时出现一堆错误,新手

将 .csv 导入 R 时出现 UTF-8 编码错误?

每次尝试将项目导入eclipse时出现Java问题