我的计划应该是一个人的佣金,它只是输出0.0美元.我很困惑.这是我的代码.我已经尝试了一些我能想到的解决方法.这可能是我犯下的一个小愚蠢的错误,我太累了,看不到它.
public class SalesComissionCalculator
{
double item1;
double item2;
double item3;
double item4;
double finalamount;
public SalesComissionCalculator()
{
item1 = 239.99;
item2 = 129.75;
item3 = 99.95;
item4 = 350.89;
finalamount = 0;
}
public void Additem(int input)
{
if(input == 1)
finalamount = finalamount + item1;
if(input == 2)
finalamount = finalamount + item2;
if(input == 3)
finalamount = finalamount + item3;
if(input == 4)
finalamount = finalamount + item4;
}
public void Finalcalculations()
{
double temp;
temp = finalamount * (.09);
finalamount = temp + 200.00;
}
public void Display()
{
System.out.println("Last Weeks earnings are $" + finalamount);
}
}
//CalculatorTest.java
import java.util.Scanner;
public class CalculatorTest {
public static void main(String[] args)
{
System.out.println("Sales Commission Calculator");
for(int i = 0; i != -1; i++)
{
int input;
SalesComissionCalculator Person = new SalesComissionCalculator();
Scanner userinput = new Scanner(System.in);
System.out.println("Input a number for the item sold. Item 1 would be ex: 1");
System.out.println("Item 2 = 2, Item 3 = 3, Item 4 = 4.");
System.out.println("To end the loop type in -1");
input = userinput.nextInt();
if(input != -1)
{
Person.Additem(input);
}
if(input == -1)
{
Person.Display();
break;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我通过在循环中创建一个对象来犯了一个愚蠢的错误,所以它实际上从来没有一个值.谢谢你的帮助.
这一行:
SalesComissionCalculator Person = new SalesComissionCalculator();
Run Code Online (Sandbox Code Playgroud)
在for循环中.因此,finalamount每次通过循环读取下一个输入时,它都会创建一个新的person对象(f为0.0).将该行移动到循环上方,以便您只在方法中创建一次该人.
| 归档时间: |
|
| 查看次数: |
85 次 |
| 最近记录: |