학교 프로젝트를위한 자동 판매기 시뮬레이션을 만들고 있는데 이러한 첫 번째 몇 가지 장벽을 극복하는 데 어려움을 겪고 있습니다. 프로젝트의 요구 사항 중 하나는 5 가지 전역 변수를 갖는 것입니다.이 전역 변수는 모든 메소드 외부에서 정의되었지만 클래스 내에서 정의 된 변수를 의미합니다. 처음에는 "Static"과 "Objects"에 대해 알기 전까지는 그 중 하나를 호출 할 수 없었습니다. 이러한 변수를 호출하는 인스턴스 메소드를 작성하고 이러한 인스턴스 메소드의 객체를 생성하여이 문제를 해결했습니다. 내 주요 정적 방법. 그러나 문제는 증가하기 위해 이러한 변수가 필요하며 0에서 변경되지 않을 것입니다! 나는 사용자가 "동전 넣기"를 컴퓨터에 시도하도록 노력하고 있지만 시도 할 때 아무런 반응이 없습니다. 어쨌든, 여기 코드가 있습니다, 그것은 거의 끝나지 않았지만 약간의 도움과 내가 잘못하고있는 것에 대한 설명은 많이 감사하게 될 것입니다. 고맙습니다!변수가 증가하지 않고 정적 메서드에서 비 정적 메서드 호출
package project3;
import java.util.Scanner;
public class Project3 {
double nickels = 0.00;
double quarters = 0.00;
double dimes = 0.00;
double dollars = 0.00;
double credits = nickels + quarters + dimes + dollars;
public static void main(String[] args) {
Project3 menu = new Project3();
menu.menu();
}
public void menu() {
int counter = 0;
Scanner input = new Scanner(System.in);
while (counter >=0 && counter <=4){
System.out.print("Credit: "+credits +"\n0. Insert Money \n1. Twix: 50¢ \n2. Marathon Bar: $1.00 \n3. Snickers: 75¢ \n4. Return Change \nSelection: ");
counter = input.nextInt();
switch (counter) {
case 0: getMoney();
break;
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
}
}
}
public void getMoney(){
int counter = 0;
Scanner input = new Scanner(System.in);
while (counter >=0 && counter <=4){
System.out.print("Credit : " +credits+"\n1. Insert Nickel \n2. Insert Dime \n3. Insert Quarter \n4. Insert Dollar \n5. Return to menu \nSelection: ");
counter = input.nextInt();
switch (counter) {
case 1: nickels += .05;
break;
case 2: dimes += .10;
break;
case 3: quarters += .25;
break;
case 4: dollars += 1.00;
break;
}
}
}
}
전나무 '.05','.10','.25' 등을 각각 '0.05', '0.10', '0.25'로 바꾸어보십시오. –