簡體   English   中英

遇到錯誤-無法在NetBeans中找到或加載主類makeachange.Main

[英]Getting Error - Could not find or load main class makingachange.Main in NetBeans

我收到此錯誤-每當我嘗試運行該程序時,都找不到或加載主類makeingachange.Main ,我不明白為什么它向我顯示此錯誤,因為我確實是Java的新手。 有人可以幫我解決這個問題:

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);
                }
    }
}

首先有一個錯誤

package語句應該是第一個語句,因此應該是

package makingachange;
import java.util.Scanner;  

然后你必須先生成包

javac -d . Main.java

java  makingchange/Main.java

-d表示創建包

. 表示生成當前目錄使用包的路徑

確保在導入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);
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM