在InventoryPart 2程序上运行的Java代码,不知道我在做什么错吗?

问题描述

| 我收到以下错误代码: C:\\ Documents and Settings \\ AdminUser \\ My Documents \\ InventoryPart2.java:83:预期的类,接口或枚举 导入java.util。*; ^ 1个错误 工具已完成,退出代码为1 编译这些源文件时:
public class Television { //class name and attributes

    private String ItemNumber; //item # of product
    private String ProductName; //product name
    private double UnitsStock; //# of units in stock
    private double UnitPrice; //Price per unit
    private double InventoryValue; //The dollar value of the inventory in stock
    private double CalculateInventory; //The total value of all of the inventory in stock
    private double value;

    //constructor
    public Television (String item,String product,double units,double price) {
        ItemNumber = item;
        ProductName = product;
        UnitsStock = units;
        UnitPrice = price;
    } //end constructor

    //getter and setter methods for Television

    public void setItemNumber (String item) { //setter for item number
        this.ItemNumber = item;
    } //end setter item number

    public String getItemNumber() { //getter for item number
        return ItemNumber;
    } //end getter item number

    public void setProductName (String product) { //setter for product name
        this.ProductName = product;
    } //end setter product name

    public String getProductName() { //getter for product name
        return ProductName;
    } //end getter product name

    public void setUnitsStock (double units) { //setter for units in stock
        this.UnitsStock = units;
    } //end setter units in stock

    public double getUnitsStock() { //getter for units in stock
        return UnitsStock;
    } //end getter units in stock

    public void setUnitPrice (double price) { //setter for unit price
        this.UnitPrice = price;
    } //end setter unit price

    public double getUnitPrice() { //getter for unit price
        return UnitPrice;
    } //end getter for unit price

    //calculate inventory value
    public double getInventoryValue(){
        return UnitsStock * UnitPrice;
    }//end calculate inventory value

    public void setCalculateInventory (double value){
        this.CalculateInventory = value;
    }

    public double getCalculateInventory(){
        double value = 0;
        for(int i = 0; i < 5; i++){
            value = getInventoryValue();
        }
        return value;
    }
    //end getter and setter methods for Television
} //end class Television
主班:
import java.util.*;

public class InventoryPart2 {

    public static void main (String args []){

        //instantiate Television array

        Television myTelevisions[] = new Television[5];

        myTelevisions[0] = new Television (\"0001\",\" Samsung UN46D6400\",9,1599.99);
        myTelevisions[1] = new Television (\"0002\",\" Vizio XVT553SV\",6,1299.00);
        myTelevisions[2] = new Television (\"0003\",\" Panasonic Viera TC-P50VT25\",2,2079.99);
        myTelevisions[3] = new Television (\"0004\",\" Sony Bravia KDL-55EX720\",8,1889.99);
        myTelevisions[4] = new Television (\"0005\",\" LG Infinia 47LX9500\",2099.00);

        //output
        for (int i = 0; i < myTelevisions.length; i++){
            System.out.println(\"Product Number: \\t\\t\" + myTelevisions[i].getItemNumber());
            System.out.println(\"Product Name: \\t\\t\\t\" + myTelevisions[i].getProductName());
            System.out.println(\"Number of Units in Stock: \\t\" + myTelevisions[i].getUnitsStock());
            System.out.printf(\"Price per Unit: \\t\\t$%.2f\\n\",+ myTelevisions[i].getUnitPrice());
            System.out.printf(\"Value of Inventory: \\t\\t$%.2f\\n\",+ myTelevisions[i].getInventoryValue());
            System.out.println();
        } // end output

        for (int i = 0; i < 5; i++){ //output total inventory value
            System.out.printf(\"Total Value of Inventory is: \\t$%.2f\\n\",+ myTelevision[i].getCalculateInventory());
            System.out.println();
        }//end output total inventory value
    } //end method main
} //end class InventoryPart1

解决方法

如@Greg和@EboMike所述,请确保将代码分成两个文件:Television.java和InventoryPart2.java。 然后,您在这里输入错误:
for (int i = 0; i < 5; i++){ //output total inventory value
    System.out.printf(\"Total Value of Inventory is: \\t$%.2f\\n\",+ myTelevision[i].getCalculateInventory());
    System.out.println();
}
是myTelevision s [i]。 如果您修正了我告诉您的内容,则您的代码可以正常运行...不用担心。 :) 编辑: 我不应该在这里检查代码的逻辑,但是如果最后一个周期是要计算总库存金额,则应该是这样的:
    //output total inventory value
    double total = 0.0;
    for (int i = 0; i < 5; i++){ 
        total +=  myTelevisions[i].getCalculateInventory();            
    }
    System.out.printf(\"Total Value of Inventory is: \\t$%.2f\\n\",total);
,这都是相同的文件吗? import语句需要转到顶部。 该错误消息清楚地向您显示导致问题的行。,你有一行
import java.util.*;
在文件中间。 Java要求在任何文件
class
interface
enum
声明之前,将
import
声明放在文件顶部。,我遇到两个问题: 如错误消息所述,您的导入语句不正确。导入在程序包声明之后和类声明之前在顶部。 假设实际上发布的代码全部在一个文件中,则需要将其分成两个文件。一个.java文件中不能有两个公共类。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...