2016-10-21 147 views
0

我得到这个错误 - 无法找到或加载makingachange.Main每当我试图运行程序,我不明白为什么它是主类向我展示这个错误,因为我真的是Java的新手。是否有人可以帮助我在试图解决这一问题:得到错误 - 无法找到或加载主类makingachange.Main在NetBeans

import java.util.Scanner; 
package makingachange; 

public class Main { 
    private int[] denom; 
    Main(int[] denom) { 
     this.denom = denom; 
    } 
    void giveChange(int changeRs) { 
     System.out.println("\nChange for " + changeRs + " in Rs " + ":"); 
     for(int i = 0; i < denom.length; ++i) { int nb = changeRs/denom[i]; if(nb > 0) 
       System.out.println(nb + " " + denom[i]); 
      changeRs %= denom[i]; 
     } 
    } 
    public static void main(String[] args) { 
       int[] Rs = {100,50,20,10,5,1}; 
       Scanner input=new Scanner(System.in); 
       System.out.println("Enter the purchase amount : "); 
       int purchaseAmount=input.nextInt(); 
       System.out.println("Enter the amount given by customer : "); 
       int AmountGivenByCusto=input.nextInt(); 
       if(AmountGivenByCusto<purchaseAmount){ 
        System.out.println("Sorry! you paid less than purchase amount! "); 
       }else 
{ 
       int result=AmountGivenByCusto-purchaseAmount; 
     Main change1 = new Main(Rs); 
     change1.giveChange(result); 
       } 
    } 
} 

回答

0

首先出现的是一个错误

package的说法应该是第一条语句所以它应该是这个

package makingachange; 
import java.util.Scanner; 

,那么你必须首先生成包

javac -d . Main.java 

java makingchange/Main.java 

-d mean创建包

.意味着生成当前目录的使用路径,才能生成包

0

确保包定义的java.util.Scanner导入前写的。仔细检查工作区中的软件包是否与您在课堂中定义的软件包名称完全相同(因此在这种情况下为:makingachange)。

以下代码适用于我。

package makingachange; 
import java.util.Scanner; 

public class Main { 
    private int[] denom; 

    Main(int[] denom) { 
     this.denom = denom; 
    } 

    void giveChange(int changeRs) { 
     System.out.println("\nChange for " + changeRs + " in Rs " + ":"); 
     for (int i = 0; i < denom.length; ++i) { 
      int nb = changeRs/denom[i]; 
      if (nb > 0) 
       System.out.println(nb + " " + denom[i]); 
      changeRs %= denom[i]; 
     } 
    } 

    public static void main(String[] args) { 
     int[] Rs = { 100, 50, 20, 10, 5, 1 }; 
     Scanner input = new Scanner(System.in); 
     System.out.println("Enter the purchase amount : "); 
     int purchaseAmount = input.nextInt(); 
     System.out.println("Enter the amount given by customer : "); 
     int AmountGivenByCusto = input.nextInt(); 
     if (AmountGivenByCusto < purchaseAmount) { 
      System.out.println("Sorry! you paid less than purchase amount! "); 
     } else { 
      int result = AmountGivenByCusto - purchaseAmount; 
      Main change1 = new Main(Rs); 
      change1.giveChange(result); 
     } 
    } 
} 
相关问题