Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未使用变量,但显然是!-JAVA_Java_Variables - Fatal编程技术网

未使用变量,但显然是!-JAVA

未使用变量,但显然是!-JAVA,java,variables,Java,Variables,所以我得到了一些奇怪的错误,比如类型和变量的非法开始,当我清楚地调用它们时,它们没有被使用。现在我使用的是最新版本的netbeans,我不是Java方面的专家,但我相信我的netbeans可能已经损坏或有些不确定的东西 就我的逻辑而言,这些if循环应该一切正常,因此我不打算详细介绍程序的用途 无论如何,这里的代码,我将突出该地区的错误 提前谢谢你-斯凯- import javax.swing.*; import java.io.*; public class Envelope extends

所以我得到了一些奇怪的错误,比如类型和变量的非法开始,当我清楚地调用它们时,它们没有被使用。现在我使用的是最新版本的netbeans,我不是Java方面的专家,但我相信我的netbeans可能已经损坏或有些不确定的东西

就我的逻辑而言,这些if循环应该一切正常,因此我不打算详细介绍程序的用途

无论如何,这里的代码,我将突出该地区的错误

提前谢谢你-斯凯-

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格式化文件,或者你正在使用的任何东西。它会直接指出这个问题。