Java模拟商品录入查询
import java.util.Scanner;
public class Test1 {
//用static全局都可查询
static String[] names={"iphone","华为","小米","VIVO"};
//单价
static double[] price={7200,5999,3599,4399};
//数量
static int[] numbers={200,19,120,50,230};
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
/*
* 1商品列表
* 2商品录入
* 3商品查询
* 4统计信息
*/
outer://循环命名
while(true){//死循环
menu(); //菜单方法
//接受菜单选项对应数字
int c=input.nextInt();
//c为选项,要输入东西
//判断选择的菜单选项执行相应方法逻辑
switch(c){
case 1:f1();
break;
case 2:f2();
break;
case 3:f3();
break;
case 4:f4();
break;
case 5:
break outer;//中断名字叫outer的循环
}
}
}
//倒着创建相应方法
private static void menu() {
System.out.println("---- 商品录入查询 ----");
System.out.println("----------------------------");
System.out.println("1.商品列表");
System.out.println("2.商品目录");
System.out.println("3.商品查询");
System.out.println("4.统计信息");
System.out.println("5.退出");
System.out.println("----------------------------");
System.out.println("请选择您的操作:");
}
private static void f1() {
/*6
*
* names ["A","B","C"]
* price ["1""2""3"]
* numbers [10.50,20]
*
* 1.名称 A 价格:1 价格:10
*/
//遍历数组
for (int i = 0; i < names.length; i++) {
String n=names[i];
double p=price[i];
int b=numbers[i];
System.out.println((i+1)+"."+"名称:"+n+" 价格:"+p+" 数量:"+b);
}
}
private static void f2() {
Scanner input=new Scanner(System.in);
//商品录入 遍历数组 (录入信息覆盖原信息)
for (int i = 0; i < names.length; i++) {
System.out.println("录入第"+(i+1)+"件商品:");
System.out.println("名称:");
String n=input.next();
System.out.println("价格:");
double p=input.nextDouble();
System.out.println("数量:");
int b=input.nextInt();
names[i]=n;
price[i]=p;
numbers[i]=b;
}
//重新显示新的列表
f1();
}
private static void f3() {
//判断内容是否相当
//System.out.println("3.商品查询");
Scanner input=new Scanner(System.in);
//s和names[i]的内容是否相等
//比较字符串是否相等,用equals()方法 数值类型int ==
System.out.println("请输入要查询的商品名称:");
String s=input.next();
for (int i = 0; i < names.length; i++) {
if (s.equals(names[i])) {
String n=names[i];
double p=price[i];
int b=numbers[i];
System.out.println((i+1)+"."+"名称:"+n+" 价格:"+p+" 数量:"+b);
return;//返回方法f3(),回去break, 后面不再执行
}
}
System.out.println("找不到此商品!");
}
private static void f4() {
/*
* 统计商品的总价
* 单价的均价
* 最高的总价
*/
double sumPrice=0; //商品总价
double djzj=0; //单价总价,为得到均价
double highestPrice=0; //最高总价
double highestDj=0; //最高单价
for (int i = 0; i < names.length; i++) {
sumPrice+=price[i]*numbers[i];
djzj+=price[i];
if (price[i]*numbers[i]>highestPrice) {
highestPrice=price[i]*numbers[i];
}
if (price[i]>highestDj) {
highestDj=price[i];
}
}
System.out.println("商品总价:"+sumPrice);
System.out.println("单价均价:"+(djzj/names.length));
System.out.println("最高总价:"+highestPrice);
System.out.println("最高单价:"+highestDj);
}
}