一、需求分析
- 實作從鍵盤輸入商品編号、商品姓名、商品價格。
- 實作根據商品編号修改商品的資訊。
- 實作商品的查詢。
二、具體實作
1、定義變量
package 商品管理系統;
public class shangping {
private int key;
private String name;
private double value;
public int getKey() {
return key;
}
public void setKey(int key) {
this.key = key;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getValue() {
return value;
}
public void setValue(double value) {
this.value = value;
}
public shangping(int key,String name,double value){
this.key=key;
this.name=name;
this.value=value;
}
public shangping(){
}
public void showInfo(){
System.out.println("編号:"+key+",名稱:"+name+",價格:"+value);
}
}
- 收獲:
- getX()、setX()可以快捷生成,右擊—>Source—>Generate Getters and Setters。
- 為什麼要建構
public shangping(){
}
- 原因是類shangping它本身就有一個構造方法去用來執行個體化對象,但你重寫了有三個參數的構造方法之後,無參的會消失,這樣就不能給類shangping執行個體化對象了。
2、方法類
package 商品管理系統;
import java.util.Scanner;
import 商品管理系統.shangping;
public class fangfa {
static shangping [] sp;// 聲明對象數組名
static int size;// 數組的長度
public static void luru() {
Scanner scanner=new Scanner(System.in);
do{
System.out.println("請輸入商品個數:");
size=scanner.nextInt();
}while(size<=0);
// 建立數組對象
sp = new shangping[size];
for(int i=0;i<size;i++){
System.out.println("請輸入商品編号:");
int k=scanner.nextInt();
System.out.println("請輸入商品姓名:");
// int類型輸入後接String類型要加一句
scanner.nextLine();
String n=scanner.nextLine();
System.out.println("請輸入商品價格:");
double db = scanner.nextDouble();
// 建立商品對象并複制給第i個元素
sp[i] = new shangping(k,n,db);
}
}
public static void xiugai() {
Scanner scanner=new Scanner(System.in);
System.out.println("請輸入要修改的商品編号:");
int h=scanner.nextInt();
int flag=0;
for(int i=0;i<sp.length;i++){
if(sp[i].getKey()==h){
flag=i;
break;
}
}
System.out.println("請輸入商品編号:");
int k=scanner.nextInt();
System.out.println("請輸入商品姓名:");
// int類型輸入後接String類型要加一句
scanner.nextLine();
String n=scanner.nextLine();
System.out.println("請輸入商品價格:");
double db = scanner.nextDouble();
sp[flag] = new shangping(k,n,db);
}
public static void chaxun() {
for(shangping s:sp){
s.showInfo();
}
}
}
public shangping(int key,String name,double value){
this.key=key;
this.name=name;
this.value=value;
}
static shangping [] sp;// 聲明對象數組名 (數組的類型+[]+數組名)
static int size;// 數組的長度
// 建立商品對象并複制給第i個元素
sp[i] = new shangping(k,n,db);
- for (循環變量類型 循環變量名稱 : 要被周遊的對象) 循環體;
for(shangping s:sp){
s.showInfo();
3、測試類
package 商品管理系統;
import 商品管理系統.fangfa;
import java.util.Scanner;
public class Jiemian {
public static void main(String[] args) {
Jiemian jm = new Jiemian();
jm.menu();
}
public void menu(){
System.out.println("範璟琛便利店");
System.out.println("-----------------------------------");
System.out.println("1.錄入商品資訊");
System.out.println("2.修改商品資訊");
System.out.println("3.查詢商品資訊");
Scanner s = new Scanner(System.in);
System.out.println("請輸入您的選項:");
int bh = s.nextInt();
switch (bh) {
case 1:
fangfa.luru();
menu();
break;
case 2:
fangfa.xiugai();
menu();
break;
case 3:
fangfa.chaxun();
menu();
break;
}
}
}
【END】初次學習若有不足之處請見諒,歡迎留言批評指出。