未使用变量,但显然是!-JAVA
所以我得到了一些奇怪的错误,比如类型和变量的非法开始,当我清楚地调用它们时,它们没有被使用。现在我使用的是最新版本的netbeans,我不是Java方面的专家,但我相信我的netbeans可能已经损坏或有些不确定的东西 就我的逻辑而言,这些if循环应该一切正常,因此我不打算详细介绍程序的用途 无论如何,这里的代码,我将突出该地区的错误 提前谢谢你-斯凯-未使用变量,但显然是!-JAVA,java,variables,Java,Variables,所以我得到了一些奇怪的错误,比如类型和变量的非法开始,当我清楚地调用它们时,它们没有被使用。现在我使用的是最新版本的netbeans,我不是Java方面的专家,但我相信我的netbeans可能已经损坏或有些不确定的东西 就我的逻辑而言,这些if循环应该一切正常,因此我不打算详细介绍程序的用途 无论如何,这里的代码,我将突出该地区的错误 提前谢谢你-斯凯- import javax.swing.*; import java.io.*; public class Envelope extends
import javax.swing.*;
import java.io.*;
public class Envelope extends Parcel {
protected char[] size = {'S','M','L'};
public Envelope(){
ImageIcon imageES = new ImageIcon ("..\\Images\\envelope-small.png");
ImageIcon imageEM = new ImageIcon ("..\\Images\\envelope-medium.png");
ImageIcon imageEL = new ImageIcon ("..\\Images\\envelope-large.png");
double ChargeS = 4.50;
double ChargeM = 8.50;
double ChargeL = 16.99;
double ChargeFinal = 0; **//Variable not being used**
if (size[0] == 'S') {
ChargeFinal = ChargeS;
} else if (size[1] == 'M') {
ChargeFinal = ChargeM;
} else if (size[2] == 'L')
ChargeFinal = ChargeL;
}
int zone = 0; //Zone will equal whatever the user selects for their parcel size
double zonecharge; //ZoneCharge will be the price depending on the zone
if (zone == 1) { **//Illegal Start of Type**
zonecharge = 0; **//Illegal Start of Type**
} else if (zone == 2) { **//Illegal Start of Type**
zonecharge = 1.5; **//Illegal Start of Type**
} else if (zone == 3) { **//Illegal Start of Type**
zonecharge = 2; **//Illegal Start of Type**
}
double EndPrice = ChargeFinal * zonecharge; **//Cannot find Symbol "ChargeFinal"**
System.out.println("Charge: £" + EndPrice); **//Illegal Start of Type**
@Override
public String toString() {
return "ID: " + idNum + "Zone: " + zone + "Charge: " + charge + "Size: " + size;
}
@Override
ImageIcon getImage() {
return image;
}
}
}否则如果(大小[2]=“L”)
ChargeFinal=ChargeL;
}//}否则如果(大小[2]='L')
ChargeFinal=ChargeL;
}//这行末尾缺少一个括号:
} else if (size[2] == 'L')
结果,大括号两行随后终止了构造函数,“非法开始类型”警告将出现,因为下一个代码块在任何方法之外。当然,在类范围内不能有语句 这行末尾缺少一个大括号:
} else if (size[2] == 'L')
结果,大括号两行随后终止了构造函数,“非法开始类型”警告将出现,因为下一个代码块在任何方法之外。当然,在类范围内不能有语句 这是因为在第一个后面缺少一个左括号,否则如果
if (size[0] == 'S') {
ChargeFinal = ChargeS;
} else if (size[1] == 'M') {
ChargeFinal = ChargeM;
} else if (size[2] == 'L') { // ADD THIS BRACKET
ChargeFinal = ChargeL;
}
这是因为在第一个else if
if (size[0] == 'S') {
ChargeFinal = ChargeS;
} else if (size[1] == 'M') {
ChargeFinal = ChargeM;
} else if (size[2] == 'L') { // ADD THIS BRACKET
ChargeFinal = ChargeL;
}
暂时忽略您的问题,在费用
声明之后的如果
声明到底有什么意义?只执行一个,尽管这三个都是非常正确的。在第一个重写之前缺少一个}(您还应该看到,zonecharge
是未初始化的。我建议添加一个else
,而不是在声明时赋值。变量可以设置为final
。此外,它是“三元运算符”?:
的一个很好的候选者。对于金钱来说,不精确的double
通常被认为是一个坏主意。)暂时忽略您的问题,在Charge
声明之后的if
声明的意义到底是什么?尽管三个声明都非常正确,但只会执行一个声明。在第一个重写之前缺少一个}(您还应该看到,zonecharge
是未初始化的。我建议添加一个else
,而不是在声明时赋值。变量可以设置为final
。此外,它是“三元运算符”?:
的一个很好的候选者。对于金钱来说,不精确的double
通常被认为是一个坏主意。)Lol Pure DERP代表我。虽然我为自己辩护,但我在早上5点尝试编写此程序。XD很高兴能提供帮助。一种在将来避免这种情况的策略:如果编译器告诉您一些疯狂的事情,请通过格式化程序运行代码——即,告诉Eclipse格式化文件,或者您正在使用的任何东西。它会正确地指出这个问题。Lol Pure DERP代表我。虽然我为自己辩护,但我一直试图在凌晨5点对其进行编程。XD很高兴能提供帮助。这是一种在将来避免这种情况的策略:如果编译器告诉你一些疯狂的事情,请通过格式化程序运行代码——即,告诉Eclipse格式化文件,或者你正在使用的任何东西。它会直接指出这个问题。