Мой учитель дал мне путаные инструкции по этому заданию кодирования. Если вы, ребята, можете помочь разработать или дать мне советы, я предоставлю то, что у меня есть.java: запутывающие инструкции, программа корзины
Прежде всего, программа, в которой я должен сделать 2 класса, которые будут работать с большим классом, чтобы создать список покупок, где вы можете отредактировать, сколько из каждого элемента вы хотите. Необходимо взять имя предмета, сколько раз его купили, и сколько стоит каждый.
Я закончил свой первый класс, я опубликую всю кодировку и правила для кодирования в нижней части этого вопроса.
Хорошо, вот что я имею. Я пойду шаг за шагом. Правило 1: поле private Purchase [] как массив покупок. Другое поле INT, который отслеживает, сколько покупок на самом деле были сделаны
Так что я сделал это:
private int Purchase[];
private int purchaseCount;
Правило 2: Отрицательные значения не имеют смысла, так просто сбросить те к нулю, если обеспечивается пользователем
Хорошо, поэтому в первой программе мне пришлось сделать то же самое, но я смущен, как это сделать сейчас.
В модификаторах я реализовал «сброс до нуля», но теперь мой учитель не просит модификаторов. Должен ли я их поместить? Я знаю, что мне просто нужно поставить «if blahblahblah < 0, а затем blahblahblah = 0», но как мне это сделать?
Правило 3: метод Accessor .length(), который возвращает ИНТ поле, сколько покупок
public int Purchase(){
return ;
}
Я думаю, это все, что я знаю, что. Я знаю, что мне нужно что-то вернуть, но не знаю, как использовать длину. И я думаю, что есть параметр.
Окончательное правило 4: Accessor .get (int) для массива Purchase, для которого требуется параметр, который будет индексировать массив. Итак, get (0) возвращает первый элемент (объект Purchase) массива.
Я думаю, что понимаю это, но поскольку я не знаю, как сделать последний шаг, я еще не пробовал это. ".get (int)" что? Итак, аксессор, где я выполняю внутри него .get (int)? Я мало знаю об аксессуарах, поэтому мне нужна эта помощь. Остальная часть программы кажется мне довольно простой, но этот исходный материал меня смущает. Благодарю.
Правило уже завершенный класс:
Три поле, строка для имени покупки, INT для блоков купили, а двойное для затрат на единицу. • Стандартные методы доступа и модификаторы для каждого поля. • Отрицательные значения не допускаются, поэтому во всех случаях изменяйте их на ноль. • Конструктор для инициализации этих трех полей (String, int, double) в этом порядке. • Перегрузка конструктора (String, double) предполагает, что значение int равно нулю. • Конструктор по умолчанию, который принимает имя, равен «", а числа равны нулю, должен вызывать три конструктора аргументов. • Метод getCost, который представляет собой просто количество единиц, приобретенных по цене единицы товара. • Предложен метод ToString возвращает строку с именем элемента, затем цены за единицу товара в скобках
Завершена программа:
public class Purchase {
private String purchase;
private int unitsPurchased;
private double costPerUnit;
// Accessors
public String purchase() {
return purchase;
}
public int unitsPurchased() {
return unitsPurchased;
}
public double costPerUnit() {
return costPerUnit;
}
// Modifiers
public void setPurchase(String purchase) {
this.purchase = purchase;
}
public void setunitsPurchased(int unitsPurchased) {
if (unitsPurchased < 0) {
unitsPurchased = 0;
}
this.unitsPurchased = unitsPurchased;
}
public void setCostPerUnit(double costPerUnit) {
if (costPerUnit < 0) {
costPerUnit = 0;
}
this.costPerUnit = costPerUnit;
}
//constructors
public Purchase() {
this("", 0, 0);
}
public Purchase(String initialPurchase, double initialCostPerUnit) {
this.purchase = initialPurchase;
this.unitsPurchased = 0;
this.costPerUnit = initialCostPerUnit;
}
public Purchase(String initialPurchase, int initialUnitsPurchased, double initialCostPerUnit) {
this.purchase = initialPurchase;
this.unitsPurchased = initialUnitsPurchased;
this.costPerUnit = initialCostPerUnit;
}
//end of everything I am sure about
//beginning of unsurety
public static double getCost(String purchase, int unitsPurchased, double costPerUnit) {
return unitsPurchased * costPerUnit;
}
public static String toString(String purchase, int unitsPurchased, double costPerUnit){
return purchase + costPerUnit;
}
}