#java #netbeans
#java #netbeans
Вопрос:
Я получаю эту ошибку — Не удалось найти или загрузить основной класс makingachange.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);
}
}
}
Ответ №1:
Сначала возникает ошибка
package
оператор должен быть первым, поэтому он должен быть таким
package makingachange;
import java.util.Scanner;
затем вам нужно сначала сгенерировать пакет
javac -d . Main.java
java makingchange/Main.java
-d
имеется в виду создать пакет
.
имеется в виду сгенерировать, используя путь к текущему каталогу для генерации пакета
Ответ №2:
Убедитесь, что определение пакета написано перед импортом 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);
}
}
}