免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2301 | 回复: 1

问一个简单的初学问题 [复制链接]

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:57:09
发表于 2010-10-03 13:09 |显示全部楼层
问题是这样的:我写了3个类,其中一个类定义的是存储数据的数组并赋了值,另外两个类一个是修改数组的,另一个是查询修改后的数组的,请问怎么样才能在不同的类中修改和读取另一个类中的同一个数组?

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:57:09
发表于 2010-10-03 13:16 |显示全部楼层
本帖最后由 sevenover 于 2010-10-03 13:41 编辑

第一个类是这样写的,这个是定义存储数据的数组的那个类。

  1. package shop;
  2. /**
  3. *
  4. * @author yuhuashi
  5. * 数据库;
  6. */
  7. public class Data {

  8. //会员数组
  9. int[] vip = new int[1000];//会员卡号
  10. String[] birth = new String[1000];//会员生日
  11. double[] score = new double[1000];//会员积分

  12. //管理员信息
  13. String managerName[] = new String[10];//管理员账号
  14. String managerPwd[] = new String[10];//管理员密码
  15. String managerIntro[] = new String[10];//管理员简介

  16. //商品数组
  17. String[] goodsName = new String[100];//商品名称
  18. double[] goodsMoney = new double[100];//商品单价
  19. String[] goodsIntro = new String[100];//商品简介
  20. int[] quantity = new int[100];//商品数量

  21. //存储用户购买信息
  22. String[] shopName = new String[50];//用户购物车中的商品名称
  23. double[] shopMoney = new double[50];//用户购物车中的商品单价
  24. double[] shopSum = new double[50];//用户购物车中的商品总价

  25. /**
  26.   * 初始值
  27.   */
  28. public void initial(int[] vip1,String[] birth1,double[] score1,String[] goodsName1,double[] goodsMoney1,String[] goodsIntro1,String[] managerName1,String[] managerPwd1,String[] managerIntro1){
  29.   //第一个会员信息
  30.   vip[0] = 0001;
  31.   birth[0] = "01/01";
  32.   score[0] = 100;
  33.   
  34.   //第二个会员信息
  35.   vip[1] = 0002;
  36.   birth[1] = "02/05";
  37.   score[1] = 187;
  38.   
  39.   //第一个商品信息
  40.   goodsName[0] = "好多鱼35g";
  41.   goodsMoney[0] = 3.5;
  42.   goodsIntro[0] = "小食品类";
  43.   
  44.   //第二个商品信息
  45.   goodsName[1] = "碧浪特惠装1250g";
  46.   goodsMoney[1] = 12.5;
  47.   goodsIntro[1] = "洗化类";
  48.   
  49.   //默认管理员信息
  50.   managerName[0] = "root";
  51.   managerPwd[0] = "123";
  52.   managerIntro[0] = "系统默认根管理员";
  53.   
  54.   managerName = managerName1;
  55.   managerPwd = managerPwd1;
  56.   managerIntro = managerIntro1;
  57.   vip = vip1;
  58.   birth = birth1;
  59.   score = score1;
  60.   goodsName = goodsName1;
  61.   goodsMoney = goodsMoney1;
  62.   goodsIntro = goodsIntro1;
  63. }
  64. }
复制代码
第二个类是一个菜单(未完成)

  1. package shop;
  2. /**
  3. *
  4. * @author yuhuashi
  5. * 菜单类
  6. * 用于显示各种菜单
  7. */
  8. public class Menu {
  9. /**
  10.   * 登陆菜单
  11.   */
  12. public void loginMenu(){
  13.   System.out.print("\t\t\t欢迎使用购物管理系统\n\n\n\n\t\t\t\t1.登录系统\n\n\n\t\t\t\t2.退出\n\n\n************************************************************\n\n请输入选项前的数字:");
  14. }

  15. }

复制代码


第三个类是后台模块(未完成)

  1. package shop;
  2. import java.util.*;
  3. /**
  4. *
  5. * @author yuhuashi
  6. * 后台管理系统;
  7. */
  8. public class Manage {
  9. Data data = new Data();
  10. Scanner inputScanner = new Scanner(System.in);
  11. /**
  12.   * 判断是否允许登录
  13.   */
  14. public String login(String nameString,String pwd){
  15.   data.initial(data.vip, data.birth, data.score, data.goodsName, data.goodsMoney, data.goodsIntro, data.managerName, data.managerPwd, data.managerIntro);
  16.   if(nameString.equals(data.managerName[0])){
  17.    addmanagers();
  18.    return data.managerName[5];
  19.   }
  20.   else
  21.    return "Error!";
  22. }
  23. /**
  24.   * 添加管理员
  25.   */
  26. public void addmanagers(){
  27.   data.initial(data.vip, data.birth, data.score, data.goodsName, data.goodsMoney, data.goodsIntro, data.managerName, data.managerPwd, data.managerIntro);
  28.   System.out.print("请输入管理员账号:");
  29.   String nameString = inputScanner.next();
  30.   data.managerName[5] = nameString;
  31. }
  32. }

复制代码
下面这个是测试类

  1. package shop;
  2. /**
  3. * 临时测试类
  4. * @author yuhuashi
  5. */
  6. import java.util.*;
  7. public class Test {
  8. public static void main(String[] args) {
  9. //  Data data = new Data();
  10. //  data.initial(data.vip, data.birth, data.score, data.goodsName, data.goodsMoney, data.goodsIntro, data.managerName, data.managerPwd, data.managerIntro);
  11.   Menu menu = new Menu();
  12.   Manage manage = new Manage();
  13.   Scanner inputScanner = new Scanner(System.in);
  14.   menu.loginMenu();
  15.   int i = inputScanner.nextInt();
  16.   if(i == 1){
  17.    System.out.print("请输入用户名:");
  18.    String nameString = inputScanner.next();
  19.    System.out.print("请输入密码:");
  20.    String pwdString = inputScanner.next();
  21.    //manage.login(nameString, pwdString);
  22.    String tmpString = manage.login(nameString, pwdString);
  23.    System.out.println(tmpString);
  24.   }
  25.   else {
  26.    System.out.println("感谢使用!");
  27.   }
  28. }
  29. }

复制代码
这几个类是我做测试写的,弄得我头大。。。。
到底应该怎样通过不同的类去修改和查询另一个类中的同一个数组呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP