java软件销售错误
我不断得到这些错误代码:
软件销售。java:20:找不到符号
符号:可变销售额
地点:class软件销售部
Sales = 99;
^
软件销售。java:30:找不到符号
符号:可变销售额
地点:class软件销售部
Total = Quantity * Sales;
^
软件销售。java:32:找不到符号
符号:变量卸载
地点:class软件销售部
Total = Total - Disount;
^
软件销售。java:37:可能的精度损失
发现:浮动
必填项:int
Rate = .20f;
^
软件销售。java:39:可能的精度损失
发现:浮动
必填项:int
Rate = .30f;
^
软件销售。java:41:可能的精度损失
发现:浮动
必填项:int
Rate = .40f;
^
软件销售。java:43:可能的精度损失
发现:浮动
必填项:int
Rate = .50f;
^
7个错误
这是我目前的代码:
import java.util.Scanner;
public class SoftwareSales
{
public static void main(String[] args)
{
Scanner keyboard = new Scanner(System.in);
Sales = 99;
int Quantity;
int Total;
int Rate;
double Discount;
System.out.print ("Enter amount of packages purchased: ");
Quantity = keyboard.nextInt();
Total = Quantity * Sales;
Discount = Total * Rate;
Total = Total - Disount;
if(!(Total < 10))
System.out.println("No discount." + "Your total is: " + Total);
else if(Total >= 19)
Rate = .20f;
else if(Total >= 49)
Rate = .30f;
else if(Total >= 99)
Rate = .40f;
else
Rate = .50f;
System.out.println("Your discount is " + Discount +
". Your total is: " + Total);
}
}
任何帮助都将不胜感激。谢谢你抽出时间
# 1 楼答案
您需要声明变量
Sales
。例如:精度错误的损失是因为您正在将
float
值分配给int
变量。虽然这有时被视为警告,但它通常指示错误,需要声明正确的变量类型或使用显式转换。可能您应该将变量声明为float
。或者,以整数值进行所有计算,避免潜在的舍入误差并不是您问过这个问题,而是Java命名约定是让变量以驼峰大小写开头,并以小写字母开头:
sales
而不是Sales
(如果您有这样的变量名,则是totalSales
而不是TotalSales
)# 2 楼答案
您可能希望将变量设置为小写,以避免与类名混淆。在java中,类名总是大写,这可能会给代码带来混乱
您缺少
int sales = 99;
它无法解析符号,因为您从未声明过它Rate
应该是一个双精度的值,如果要将值转换为浮点值,可以省略.f
# 3 楼答案
你需要学习变量类型,我的朋友。销售额很可能是一个整数
利率是原来的两倍
整个代码应该是
# 4 楼答案
Sales
Disount
中有一个输入错误Rate
应该是float