Java实现购物管理系统

本文实例为大家分享了Java实现购物管理系统的具体代码,供大家参考,具体内容如下

重点内容

JAVA分支结构练习
动态数组
注册表读写删

代码:

package Endless;

import java.util.ArrayList;
import java.util.Random;
/**
* @JAVA01.person1.java
* @author 当前用户:Endless作者 :Endless
* @version 创建时间:2017年7月26日 下午6:29:16
* //实现商品及会员信息管理(添加,删除,显示)
* //实现超市结算
*/
import java.util.Scanner;
import java.util.prefs.BackingStoreException;
import java.util.prefs.Preferences;

public class persion {
 static int s;
 static boolean huiyuan,xhuiyuan;
 static String bke="百事可乐",ke="500ml可乐一瓶",m="5公斤面粉",ss="1个苏泊尔炒菜锅",o="欧莱雅爽肤水一瓶";
 static ArrayList<String>array=new ArrayList<String>();
 static Preferences goodsnodes = Preferences.systemRoot().node("goods"); //创建节点
 static Preferences goodschildnode = goodsnodes.node( "goods");  //创建子节点 

 public static void main(String []args) {

  outline();
  System.out.println("\t欢迎使用购物管理系统");
  System.out.println("\t1.登陆系统\n\t2.退出程序\n ");
  outline();
  int n =scanint();
  if(n == 1){
   login();
  }else if( n== 2){
  System.out.println("已退出");
  System.exit(0);
  }else {
  System.out.println("请重新选择:");
  main(null);
 }

 }
 public static void outline(){
  System.out.println("* * * * * * * * * * * * * * * * * * * * * * *\n");
 }

 public static int scanint(){
 int x = 0;
 try {
  Scanner scan =new Scanner(System.in);
  x = scan.nextInt();
 } catch (Exception e) {
  System.out.println("输入有误,请输入数字:");
 }
 return x;
 }

 public static String scanStr(){
 String x = null;
 try {

  Scanner scan =new Scanner(System.in);
  x = scan.next();
 } catch (Exception e) {
  System.out.println("输入有误,请输入字符串:");
 }
 return x;
 }
 public static void login(){
  System.out.println(" * * * * * * * * * 登陆 * * * * * * * * * * * *\n请输入密码\n:");
  int n1 =scanint();
  if(n1==(123123)){
  System.out.println("登陆成功\n");
  showMain();
  }else{
  System.out.println("密码错误");
  System.out.println("请重新输入密码\n:");
  login();
  }
 }
 private static void showMain() {
 System.out.println("\n\n\t欢迎使用购物管理系统\n");
 outline();
 System.out.println("\t\t 1. 会 员 信 息 管 理\n");
 System.out.println("\t\t 2. 货 物 信 息 管 理\n");
 System.out.println("\t\t 3. 购 物 结 算\n");
 System.out.println("\t\t 4. 注 销\n");
 outline();
 System.out.print("请选择,输入数字:");
 int n2 =scanint();
 switch (n2) {
 case 1:
  new user();
  break;
 case 2:
  goods();
  break;
 case 3:
  jiesuan();
  break;
 case 4:
  System.out.println("注销成功");
  main(null);
 default:
  System.out.println("没有您要的选项请重新输入");
  showMain();
  break;
 }
 }
 private static void goods() {
 //商品管理 :添加商品: 编号 品名 价格
 // 删除:选择标号删除

 outline();
 System.out.println("\t\t商品信息管理\n");
 System.out.println("\t\t1,显示商品\n");
 System.out.println("\t\t2,添加物品\n");
 System.out.println("\t\t3,删除商品\n");
 System.out.println("\t\t4,返回上级\n");
 outline();
 int n = scanint();
 if (n==1){
  showgoods();
 }else if(n==2){
  addgoods();
 }else if(n ==3){
  delgoods();
 }else if(n==4) {
  showMain();
 }else {
  goods();
 }
 }
 private static void delgoods() {
   System.out.println("请选择要删除商品的ID:\n按0返回上级");
   try {
   Scanner scan =new Scanner(System.in);
   int x = scan.nextInt();
   boolean remove=false;
   for (int i=0;i<array.size();i++){
    if(x==Integer.parseInt(array.get(i))){
    remove=true;
    }
   }
   if (remove){
    goodschildnode.remove(Integer.toString(x));
    System.out.println("删除成功");
    goods();
   }else if (x==0) {
    goods();
   }else {
   System.out.println("没有此商品!");
    delgoods();
   }
   new user();
   } catch (Exception e) {
   System.out.println("请输入数字");
    delgoods();
   }
 }
 private static void showgoods() {
  try {
   int leng =goodschildnode.keys().length;
   syncread();
   if(leng==0){
   System.out.println("没有商品");
   }else{
   try {
    System.out.println("当前有"+goodschildnode.keys().length+"种商品");
    for(int i = 0;i<=goodschildnode.keys().length;i++){
    String shows =goodschildnode.get(array.get(i), "");
     System.out.println(shows);
     System.out.println("──────────────────────────────────────────────");
    }
    System.out.println("00000000");
    } catch (Exception e) {
    }
   }

  } catch (BackingStoreException e) {

  }
  System.out.println("111111111");
   goods();
 }

 private static void syncread() {
  try {
  String[] arr= goodschildnode.keys();
  goodschildnode.sync();
  array.clear();
  for(int i=0;i<arr.length;i++){
  array.add(arr[i]);
  }
  } catch (Exception e) {
  }
 }

 private static int check(int x) {
  Random n=new Random();
  syncread();
  for(int i=0;i<array.size();i++){
   if(x==Integer.parseInt(array.get(i))){
   check(n.nextInt(999)+1);
   }
  }
  return x;

 }
 private static void addgoods(){
  outline();
  System.out.println("\t\t请输入商品信息");
  System.out.println("\t\t品名,价格(元),单位");
  System.out.println("\t\t回车换行区分");
  outline();
  syncread();
  String name =scanStr();
  String nuit =scanStr();
  int price = scanint();
  Random n=new Random();
  String id ;
   id=Integer.toString(check(n.nextInt(999)+1));
   try{
   goodschildnode.put(id, "ID:"+id+" 品名:"+name+" 价格:"+price+" 单位:"+nuit);
   syncread();
   System.out.println("第"+(goodschildnode.keys().length)+"种商品添加成功");
   System.out.println("当前商品"+goodschildnode.keys().length+"种\n"+array+"\n"+array.size());
   goods();
  } catch (Exception e) {
   goods();
  }
 }
 static void jiesuan(){
 try{
  System.out.println("是否会员?是选1 否选0");
  int x= scanint();
  if (x==1){
   huiyuan = true;
   Scanner sc =new Scanner(System.in);
   System.out.println("请输入您的会员号:");
   int hui = sc.nextInt()/100%10;
   if(hui==9){
   System.out.println("恭喜你属于幸运会员,可以享受全场八折优惠");
   xhuiyuan = true;
   }else{
   xhuiyuan = false;
   }
  }else if (x==0) {
   huiyuan = false;
  }
  System.out.println("请输入消费金额:");
  Scanner scan =new Scanner(System.in);
  if(scan.hasNext()){
  s=scan.nextInt();
  outline();
  System.out.println("是否参加优惠换购活动:" );
  System.out.println("1:满50元,加2元换购"+bke );
  System.out.println("2:满100元,加3元换购" +ke);
  System.out.println("3:满100元,加10元换购" +m );
  System.out.println("4:满200元,加10元换购" +ss );
  System.out.println("5:满200元,加20元换购 " +o );
  System.out.println("0:不换购\n请选择:\n" );
  outline();
  os();
  }
 } catch (Exception e) {
  System.out.println("请输入数字");
  jiesuan();

 }
 }
 static void out(String n , double s){
 if(!(n==null)){
  System.out.println("成功换购"+n);
 }
 System.out.println("本次消费总金额:"+s+"元");
 if (huiyuan && xhuiyuan){
  System.out.println("尊敬的幸运会员,本次消费享受8折优惠");
  double x =s*0.8;
  System.out.println("折扣为您节省:"+(s-x)+"元");
 }else if (huiyuan) {
  System.out.println("尊敬的会员,本次消费享受9折优惠");
  double x =s*0.9;
  System.out.println("折扣为您节省:"+(s-x)+"元");
 }
 System.out.println("实际消费总金额:"+s+"元");
 showMain();
 }
 static void os(){
  switch (scanint()) {
  case 0:
  out(null,s);
  case 1:
  if(s>=52){
   out(bke,s+2);
  }else{
   Err();
  }
  case 2:
  if(s>=103){
   out(ke,s+3);
  }else{
   Err();
  }
  break;
  case 3:
  if(s>=110){
   out(m,s+10);
  }else{
   Err();
  }
  break;
  case 4:
  if(s>=210){
   out(ss,s+10);
  }else{
   Err();
  }
  break;
  case 5:
  if(s>=220){
   out(o,s+20);
  }else{
   Err();
  }
  break;
  default:
  System.out.println("请重新选择");
  os();
  }
 }
 static void Err(){

  System.out.println("金额不足\n");
  main(null);
 }
 static class user{
  static ArrayList<String>array=new ArrayList<>();
  static Preferences nodes = Preferences.systemRoot().node("user"); //创建节点
  static Preferences childnode = nodes.node( "user");  //创建子节点 

  public user() {
  outline();
  System.out.println("\t\t1,添加用户");
  System.out.println("\t\t2,删除用户");
  System.out.println("\t\t3,显示用户");
  System.out.println("\t\t4,返回上级");
  outline();
  try {
   int x=scanint();
   switch (x) {
   case 1:
   add();
   break;
   case 2:
   deluser();
   break;
   case 3:
   show();
   break;
   case 4:
   showMain();
   break;
   default:
   System.out.println("没有您要的选项!请重新选择");
    new user();
   break;
   }
  } catch (Exception e) {
  new user();
  }
 }
 private void deluser() throws BackingStoreException {
   System.out.println("请选择要删除用户的ID:\n按0返回上级");
   try {
   Scanner scan =new Scanner(System.in);
   int x = scan.nextInt();
   boolean remove=false;
   for (int i=0;i<array.size();i++){
    if(x==Integer.parseInt(array.get(i))){
    remove=true;
    }
   }
   if (remove){
    childnode.remove(Integer.toString(x));
    System.out.println("删除成功");
   }else if (x==0) {
   new user();
   }else {
   System.out.println("没有此用户!");
    deluser();
   }
   new user();
   } catch (Exception e) {
   System.out.println("请输入数字");
    deluser();
   }
 }
 private static void show() {
  try {
   int leng =childnode.keys().length;
   syncread();
   if(leng==0){
   System.out.println("没有用户");
   }else{
   System.out.println("当前有"+childnode.keys().length+"位用户");
   for(int i = 0;i<=childnode.keys().length;i++){
    String shows =childnode.get(childnode.keys()[i], "");
    System.out.println(shows);
    System.out.println("──────────────────────────────────────────────");
   }
   }
  } catch (BackingStoreException e) {
  }
  new user();
 }

 private static void syncread() {
  try {
  String[] arr= childnode.keys();
  childnode.sync();
  array.clear();
  for(int i=0;i<arr.length;i++){
  array.add(arr[i]);
  }
  } catch (Exception e) {
  }
 }

 private static void add(){
  Preferences nodes = Preferences.systemRoot().node("user"); //创建节点
  Preferences childnode = nodes.node( "user");  //创建子节点
  outline();
  System.out.println("\t\t请输入用户信息");
  System.out.println("\t\t姓名,6位卡号,年龄,电话");
  System.out.println("\t\t回车换行区分");
  outline();
  syncread();
  String name =scanStr();
  int card = scanint();
  int age =scanint();
  String tel =scanStr();
  Random n=new Random();

  String id ;
   id = Integer.toString(n.nextInt(999)+1);
   try{
   childnode.put(id, "ID:"+id+" 姓名:"+name+" 卡号:"+card+" 年龄:"+age+" 电话:"+tel);
   syncread();
   System.out.println("第"+(childnode.keys().length)+"位会员添加成功");
   System.out.println("当前用户"+childnode.keys().length+"位\n"+array+"\n"+array.size());
   new user();
  } catch (Exception e) {
   new user();
  }
 }
 }
}

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • java学生成绩管理系统设计与实现

    本文实例为大家分享了java学生成绩管理系统的具体代码,供大家参考,具体内容如下 /* *@copyright by LzyRapx on 2016/4/12. *@name:java学生成绩管理系统. *@功能:学生相关信息,录入,查询,统计,修改等.... *@PS:图形界面的学生管理系统不要求就不做了. */ import java.util.Scanner; import java.lang.*; import java.io.*; class Student { private sta

  • Java版水果管理系统源码

    水果管理系统Java版分享给大家. 主类 FruitsDemo /** * 功能: * 1. 查看所有的水果 * 2. 添加新的水果(添加的时候判断水果名是否有重复) * 3. 对所有的水果进行排序(价格排序.库存排序) * 4. 删除指定的水果 * 5. 退出系统 * * 注意: * 1. 每种水果都必须有水果id,水果名,水果数量,水果价格 * 2. 添加水果时,要由用户输入水果名.数量和价格 * 3. 删除水果时要二次确认 * * 评分依据: 功能实现的情况,代码规范性(命名规范.格式规范

  • java实现水果超市管理系统

    本文为大家分享了java实现水果超市管理系统的具体代码,供大家参考,具体内容如下 首先建立水果类的界面 public class Fruit { //定义ID private String id; //定义名称 private String name; //定义价格 private int price; //定义单位 private String unit; //定义数量 private int number; public Fruit(String id, String name, int p

  • 图书管理系统java代码实现

    本文实例为大家分享了java实现图书管理系统的具体代码,供大家参考,具体内容如下 /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:    <图书管理系统--java>                          * 作    者:       刘江波                       * 完成日期:    2012     年  3    

  • java学生信息管理系统源代码

    本文实例为大家分享了java学生信息管理系统的具体代码,实现学生信息: 增加 int[] a=new int[9] .删除 .查找.更改,供大家参考,具体内容如下 /*学生信息管理系统,实现学生信息: *增加 int[] a=new int[9] *删除 *查找 *更改 */ import java.util.Scanner;//导入java输入流 import java.lang.*; import java.io.*; class Student { private static Stude

  • java学生信息管理系统设计与实现

    闲暇之余用JAVA写了个学生信息的管理系统,由于博主还是萌新,代码难免有冗余和错误的地方,如果您发现有什么不足之处或者错误,请留言.博主会尽量回复. 需求分析 一个学生信息管理系统应该包含这些内容: 教师页面 在教师页面应该包含: 学生页面 在教学生页面应该包含: 包含的类 根据分析,我们的学生信息系统应该包含三个类: 代码 学生类 Student.java package com.gcl; import com.sun.org.glassfish.external.statistics.Ave

  • Java GUI实现学生成绩管理系统

    学习java有一年多了,一直在做web方面的练习,在一个项目中发现需要用到GUI的相关知识,结果没法做出来,网上这方面的文章又不是很多,所有只好自己硬着头皮从头再学一遍了,不过学习后发现,其实GUI是非常有趣的,他并不像WEB程序一样依赖互联网,而且还有许多布局和android相差不是很大,这才发现自己竟又爱上GUI的开发了,不多说了,直接上代码吧,相信有过android或相关界面开发的都明白这其中的道理. 先看看效果吧 1.登录主界面 package edu.gzu.stuManager; i

  • javaWeb实现学生信息管理系统

    本文为大家分享了javaWeb实现学生信息管理系统,供大家参考,具体内容如下 初始版 初始版是没有加分页的.因为没怎么学过前端,界面很丑陋.主要技术:JSP,JavaBean,servlet,JDBC主要页面如下: 登录页面 主页 添加学生 查看所有学生 查询学生 工程目录 数据库 两个表,user表和student表.为了使用DBUtils工具,一定要注意数据库表的属性的命名和JavaBean的get(),set() 方法的匹配.比如t_user表里的uname,在JavaBean中是:pri

  • java学生管理系统界面简单实现(全)

    学生管理系统简单的实现,供初学Java Swing同学学习使用. import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import jav

  • Java基于MySQL实现学生管理系统

    本文为大家分享了Java基于MySQL实现学生管理系统,供大家参考,具体内容如下 因为实验室要交作业然后就做了一个学生管理系统,贴个代码纪念一下,做的太急界面什么的也比较差. 还有一些小细节没有完善不过还是能实现主要的功能的. Window是主界面 package First; import java.sql.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Window { pub

随机推荐