ohmyGG 2022-12-01 18:11 采纳率: 87.5%
浏览 12
已结题

java登录后查询完商品又跳转到了登录方法里该如何解决

#通过用户登录后进入商品选购查看商品后自动跳转到了登录账号的方法里,我该如何让它只是返回到商品选购界面

import java.util.ArrayList;
import java.util.Scanner;

public class Main {
    static ArrayList<Shangpin> array1=new ArrayList<Shangpin>();
    static ArrayList<Yonghu> array=new ArrayList<Yonghu>();


    public static void main(String[] args) {
        Shangpinlist spl=new Shangpinlist();
        spl.sahngpnqingdan();
        Yonghulist yhl=new Yonghulist();
        yhl.yonghuqingdan();
        while (true)
        {
            System.out.println("///////////////////欢迎来到网上商店////////////////////////////////");
            System.out.println("0 退出");
            System.out.println("1 用户注册");
            System.out.println("2 用户登录");
            System.out.println("3 进入管理员模式");
            Scanner scanner=new Scanner(System.in);
            String a=scanner.nextLine();
            Yonghu y=new Yonghu();
            switch (a){
                case"0":
                    System.out.println("感谢使用");
                    System.exit(0);
                    break;
                case"1":
                    System.out.println("1 用户注册");
                    yonghuzhuce(array);
                    break;
                case"2":
                    System.out.println("2 用户登录");
                    yonghudenglu(array,array1);
                    break;

                case"3":
                    System.out.println("3 管理员模式登录");
                    guanliyuandenglu(array,array1);
                    break;

                default:
                    System.out.println("输入命令有误,请重新输入!");
            }
        }
    }
 public static void tiaoban(){
     while (true)
     {
         System.out.println("///////////////////欢迎来到网上商店////////////////////////////////");
         System.out.println("0 退出");
         System.out.println("1 用户注册");
         System.out.println("2 用户登录");
         System.out.println("3 进入管理员模式");


         Scanner scanner=new Scanner(System.in);
         String a=scanner.nextLine();
         Yonghu y=new Yonghu();
         switch (a){
             case"0":
                 System.out.println("感谢使用");
                 System.exit(0);
                 break;
             case"1":
                 System.out.println("1 用户注册");
                 yonghuzhuce(array);
                 break;
             case"2":
                 System.out.println("2 用户登录");
                 yonghudenglu(array,array1);
                 break;

             case"3":
                 System.out.println("3 管理员模式登录");
                 guanliyuandenglu(array,array1);
                 break;

             default:
                 System.out.println("输入命令有误,请重新输入!");
         }

     }
 }

    private static void guanliyuandenglu(ArrayList<Yonghu> array,ArrayList<Shangpin> array1)//管理员登录
    {
        Scanner sc=new Scanner(System.in);
        String zh1;
        String mm1;
        while(true) {
            System.out.println("请输入管理员账号");
            zh1=sc.nextLine();
            System.out.println("请输入管理员密码");
            mm1=sc.nextLine();
            if (zh1.equals("asd")&&mm1.equals("123")){
                System.out.println("账号密码正确");
                guanliyuan(array,array1);
                break;
            }else {
                System.out.println("账号或密码错误,请重新登录,或注册后再进行登录");
                break;
            }
        }
    }





    //用户注册
    public static  void  yonghuzhuce(ArrayList<Yonghu> array){
        //从键盘录入用户注册的账号名账号密码
        Scanner sc=new Scanner(System.in);
        // 为了在while外访问Name
        String Name;
        String zhanghao;
        String mima;
        String dizhi;
        while(true){
            System.out.println("请输入账号名");
            Name= sc.nextLine();
            System.out.println("请注册账号");
            zhanghao= sc.nextLine();
            boolean flag=Name(array,Name);
            System.out.println("请注册密码");
            mima= sc.nextLine();
            System.out.println("请输入收货地址");
            dizhi= sc.nextLine();
            boolean flag3=Name1(array,zhanghao);
            //创建对象,将键盘录入的数据赋值给对象中的成员变量
            if(flag3==true&&flag==true){
                System.out.println("您输入的账号名已使用,请重新输入:");
                break;
            }
            Yonghu yh=new Yonghu();
            yh.setName(Name);
            yh.setZhanghao(zhanghao);
            yh.setMima(mima);
            yh.setDizhi(dizhi);
            //将对象添加到集合中,并提示成功
            array.add(yh);

            System.out.println("注册成功");
                break;

        }

    }

    private static boolean Name1(ArrayList<Yonghu> array, String zhanghao)//看是否存在
    {
        boolean flag3=false;
        for(int i=0;i<array.size();i++)
        {
            Yonghu yh=array.get(i);

            if(yh.getZhanghao().equals((zhanghao))){
                flag3=true;
                break;
            }
        }


        return flag3;
    }

    private static boolean Name(ArrayList<Yonghu> array, String name)//看是否存在
    {
        boolean flag=false;
        for(int i=0;i<array.size();i++)
        {
            Yonghu yh=array.get(i);

            if(yh.getName().equals((name))){
                flag=true;
                break;
            }
        }


        return flag;}

    //用户登录
    public static  void  yonghudenglu(ArrayList<Yonghu>array,ArrayList<Shangpin>array1){

        Scanner sc=new Scanner(System.in);
        String zh;
        String mm;

        while(true) {
            System.out.println("请输入账号");
            zh=sc.nextLine();
            System.out.println("请输入账号密码");
            mm=sc.nextLine();
            boolean flag1=f1(array,zh);
            boolean flag2=f2(array,mm);

            if (flag2==flag1&&flag1==true&&flag2==true){
                System.out.println("账号密码正确");
                shangdiancaidan(array,array1,zh,mm);

            }else {

                System.out.println("账号或密码错误,请重新登录,或注册后再进行登录");
                break;
            }

        }
    }
    //商店菜单
    private static void shangdiancaidan(ArrayList<Yonghu>array,ArrayList<Shangpin>array1,String zh,String mm) {
        //用户的集合

        System.out.println("0 退出账号");
        System.out.println("1 查看用户个人信息");
        System.out.println("2 用户信息修改");
        System.out.println("3 商品选购");
        System.out.println("4 订单查看");
        Scanner scanner=new Scanner(System.in);
        String a=scanner.nextLine();
        switch (a){
            case"0":
                System.out.println("感谢使用");
                break;
            case"1":
                System.out.println("1 查看用户个人信息");
                gerenchakan(zh,mm);
                break;
            case"2":
                System.out.println("2 用户信息修改");
                yonghuxinxixiugai(array);
                break;
            case"3":
                System.out.println("3 商品选购");
                shangpinxuangou(array1);
                break;
            case"4":
                System.out.println("4 订单查看");
                dingdanchakan(array1);
                break;

            default:
                System.out.println("输入命令有误,请重新输入!");
        }

    }

    private static void gerenchakan(String z,String m) {
        gerenyonghuxinxichakan(array,z,m);
    }

    private static void dingdanchakan(ArrayList<Shangpin> array1) {
    }

    private static void shangpinxuangou(ArrayList<Shangpin> array1) {


        System.out.println("0 退回");
        System.out.println("1 查看商品");
        System.out.println("2 选择购买的商品");
        System.out.println("3 搜索商品");
        Shangpinlist spl=new Shangpinlist();
        Scanner sc=new Scanner(System.in);
        String a=sc.nextLine();
        switch (a) {
            case "0":
                System.out.println("感谢使用");
                break;
            case "1":
                System.out.println("1 查看商品");
                spl.shangpinqingdanchakan();
                break;
            case "2":
                System.out.println("2 选择购买的商品");

                break;
            case "3":
                System.out.println("3 搜索商品");

                break;
            default:
                System.out.println("指令错误,请重新输入!");
        }
    }

    private static void gerenyonghuxinxichakan(ArrayList<Yonghu> array,String zz,String mm) {

        System.out.println("用户名\t\t账号\t\t密码\t\t");

        //从集合中取出数据按照对应格式显示学生信息
        for(int i=0;i< array.size();i++){
            Yonghu yh=array.get(i);
           if(zz.equals(yh.getZhanghao())){
                System.out.println("用户名:" + yh.getName() + "\t\t" + "账号" + yh.getZhanghao() + "\t\t" + "密码" + yh.getMima());
            }
        }
        shangdiancaidan(array,array1,zz,mm);
    }

    private static boolean f2(ArrayList<Yonghu> array, String mm)//判断密码是否正确
    {
        boolean flag1=false;
        for(int i=0;i<array.size();i++)
        {
            Yonghu yh=array.get(i);

            if(yh.getMima().equals((mm))){
                flag1=true;
                break;
            }
        }

        return flag1;}

    private static boolean f1(ArrayList<Yonghu> array, String zh) //判断账号是否正确存在
    {
        boolean flag2=false;
        for(int i=0;i<array.size();i++)
        {
            Yonghu yh=array.get(i);

            if(yh.getZhanghao().equals((zh))){
                flag2=true;
                break;
            }
        }
        return flag2;}


    //管理员界面
    public static  void  guanliyuan(ArrayList<Yonghu>array,ArrayList<Shangpin> array1){

        while (true)
        {
            System.out.println("///////////////////欢迎来到网上商店管理员系统////////////////////////////////");
            System.out.println("0 退出管理员");
            System.out.println("1 商店商品管理");
            System.out.println("2 用户信息管理");
            System.out.println("3 订单信息管理");
            Scanner scanner=new Scanner(System.in);
            String b=scanner.nextLine();
            dingdan s=new dingdan();
            switch (b){
                case"0":
                    System.out.println("感谢使用");
                    tiaoban();
                    break;
                case"1":
                    System.out.println("商品管理菜单");
                    shangpingaunli(array,array1);
                    break;
                case"2":
                    System.out.println("用户信息管理菜单");
                    yonghuxinxiguanli(array);
                case"3":
                    System.out.println("用户订单信息管理菜单");
                    dingdanxinxi(array);
                default:
                    System.out.println("输入命令有误,请重新输入!");
            }

        }

    }



    private static void dingdanxinxi(ArrayList<Yonghu> array) {


    }


    //商品信息管理
    private static void shangpingaunli(ArrayList<Yonghu>array,ArrayList<Shangpin> array1) {



        while (true)
        {
            System.out.println("///////////////////欢迎来到网上商店管理系统////////////////////////////////");
            System.out.println("0 退出");
            System.out.println("1 商品添加");
            System.out.println("2 商品修改");
            System.out.println("3 商品删除");
            System.out.println("4 商品查看");

            Scanner scanner=new Scanner(System.in);
            String b=scanner.nextLine();
            switch (b){
                case"0":
                    System.out.println("感谢使用");
                    guanliyuan(array,array1);
                    break;
                case"1":
                    System.out.println("商品添加");
                    shangpintainjia(array1);
                    break;
                case"2":
                    System.out.println("商品修改");
                    sahngpinxiugai(array1);
                    break;
                case"3":
                    System.out.println("商品删除");
                    sahngpinshanchu(array1);
                    break;
                case"4":
                    System.out.println("商品查看");
                    shangpinchakan(array1);
                    break;

                default:
                    System.out.println("输入命令有误,请重新输入!");
            }

        }
    }

    private static void shangpinchakan(ArrayList<Shangpin> array) //商品查看
    {

        System.out.println("商品名\t\t价格\t\t厂商\t\t");

        if (array.size()==0){
            System.out.println("无信息,请先添加信息后再查询");
            return;//为了往下执行,而不是卡在这
        }
        //从集合中取出数据按照对应格式显示学生信息
        for(int i=0;i< array.size();i++){
            Shangpin sp=array.get(i);
            System.out.println(sp.getName()+"\t\t"+sp.getJiage()+"\t\t"+sp.getChangshang());

        }
    }

    private static void sahngpinxiugai(ArrayList<Shangpin> array1) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要修改的商品信息");
        String name=sc.nextLine();
        //修改前,先判断是否存在
        int index=-1;
        //遍历集合修改对应用户的信息
        for(int i=0;i<array1.size();i++){
            Shangpin yh=array1.get(i);
            if(yh.getName().equals(name)){
                index=i;
                break;
            }
        }
        if (index==-1){
            System.out.println("该商品信息不存在,请重新输入!");
        }else{
            for(int j=0;j< array1.size();j++){
                Shangpin yh=array1.get(j);
                if(yh.getName().equals(name)){
                    System.out.println("请输入新名字:");
                    String Name=sc.nextLine();
                    System.out.println("请输入新价格:");
                    String jiage=sc.nextLine();
                    System.out.println("请输入厂商:");
                    String changshang=sc.nextLine();
                    //创建对象
                    Shangpin yh1=new Shangpin();
                    yh1.setName(Name);
                    yh1.setJiage(jiage);
                    yh1.setChangshang(changshang);
                    array1.set(j,yh1);
                    //提示修改成功信息
                    System.out.println("修改信息成功!");
                    break;
                }

            }
        }
    }

    private static void shangpintainjia(ArrayList<Shangpin> array1)
    {
        Scanner sc=new Scanner(System.in);
        // 为了在while外访问Name
        String name;//商品名
        String jiage;//价格
        String changshang;//厂商
        int  i=0;

        while(true){
            System.out.println("请输入商品名");
            name= sc.nextLine();

            System.out.println("请输入价格");
            jiage= sc.nextLine();
            System.out.println("请输入厂商");
            changshang= sc.nextLine();
            //创建对象,将键盘录入的数据赋值给对象中的成员变量
            Shangpin sp=new Shangpin();
            sp.setName(name);
            sp.setChangshang(changshang);
            sp.setJiage(jiage);
            //将对象添加到集合中,并提示成功
            array1.add(sp);

            System.out.println("商品添加成功");

            break;
        }
    }



    //这是删除的方法
    private static void sahngpinshanchu(ArrayList<Shangpin> array1) {
        //从键盘录入删除商品名
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要删除的商品名:");
        String sp=sc.nextLine();
        //删除修改前判断商品是否存在
        //遍历集合,找到对应的对象将其删除
        int index=-1;
        for(int i=0;i<array1.size();i++){
            Shangpin sp1=array1.get(i);
            if(sp1.getName().equals(sp)){
                index=i;
                break;
            }
        }

        if (index == -1){

            System.out.println("该商品不存在,请重新输入!");
        }else {
            array1.remove(index);
            System.out.println("删除该商品成功!");
        }

    }
    //用户信息管理
    private static void yonghuxinxiguanli(ArrayList<Yonghu> array) {

        while (true)
        {
            System.out.println("///////////////////欢迎来到网上商店管理系统////////////////////////////////");
            System.out.println("0 退回");
            System.out.println("1 用户全部信息查看");
            System.out.println("2 指定账户查询");
            System.out.println("3 用户信息修改");
            System.out.println("4 用户信息删除");


            Scanner scanner=new Scanner(System.in);
            String b=scanner.nextLine();
            switch (b){
                case"0":
                    System.out.println("感谢使用");
                    guanliyuan(array,array1);
                    break;
                case"1":
                    System.out.println("用户全部信息查看");
                    yonghuxinxichakan(array);
                    break;
                case"2":
                    System.out.println("指定账户查询");
                    zhidingyonghuxinxi(array);
                    break;
                case"3":
                    System.out.println("用户信息修改");
                    yonghuxinxixiugai(array);
                    break;
                case"4":
                    System.out.println("用户信息删除");
                    yonghuxinxishanchu(array);
                    break;
                default:
                    System.out.println("输入命令有误,请重新输入!");
            }

        }

    }

    private static void yonghuxinxixiugai(ArrayList<Yonghu> array) //用户信息修改
    {  //从键盘获取要修改学生的学号,显示要修改的信息
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要修改的用户信息");
        String zhanghaos=sc.nextLine();
        //修改前,先判断是否存在
        int index=-1;
        //遍历集合修改对应用户的信息
        for(int i=0;i<array.size();i++){
            Yonghu yh=array.get(i);
            if(yh.getZhanghao().equals(zhanghaos)){
                index=i;
                break;
            }
        }
        if (index==-1){
            System.out.println("该用户信息不存在,请重新输入!");
        }else{
            for(int j=0;j< array.size();j++){
                Yonghu yh=array.get(j);
                if(yh.getZhanghao().equals(zhanghaos)){
                    System.out.println("请输入该用户新用户名:");
                    String name=sc.nextLine();
                    System.out.println("请输入该用户新账号:");
                    String zhanghao=sc.nextLine();
                    System.out.println("请输入该用户新密码:");
                    String mima=sc.nextLine();
                    System.out.println("请输入该用户新地址:");
                    String dizhi=sc.nextLine();
                    //创建对象
                    Yonghu yh1=new Yonghu();
                    yh1.setName(name);
                    yh1.setZhanghao(zhanghao);
                    yh1.setMima(mima);
                    yh1.setDizhi(dizhi);
                    array.set(j,yh1);
                    //提示修改成功信息
                    System.out.println("修改信息成功!");
                    break;
                }

            }
        }
    }
    //用户信息查看
    private static void yonghuxinxichakan(ArrayList<Yonghu> array) {
        if (array.size()==0){
            System.out.println("无信息,请先添加信息后再查询");
            return;//为了往下执行,而不是卡在这
        }

        //从集合中取出数据按照对应格式显示学生信息
        for(int i=0;i< array.size();i++){
            Yonghu yh=array.get(i);
            System.out.println("用户名:"+yh.getName()+"\t\t"+"账号"+yh.getZhanghao()+"\t\t"+"密码"+yh.getMima());

        }

    }

    //定义一个方法,用于指定查询信息
    private static void zhidingyonghuxinxi(ArrayList<Yonghu> array){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入用户账号");
        String zhanghao=sc.nextLine();
        //查询前判断账号是否存在
        int index=-1;
        Yonghu yh=null;
        //遍历集合将对象从集合中取出
        for(int i=0;i< array.size();i++){
            yh=array.get(i);
            if (yh.getZhanghao().equals(zhanghao)){
                index=1;
                break;
            }
        }
        if (index==-1){
            System.out.println("该账号不存在,请重新输入");
        }else {
            System.out.println("姓名\t\t账号\t\t密码\t\t");
            System.out.println(yh.getName()+"\t\t"+yh.getZhanghao()+"\t\t"+yh.getMima());
        }
    }
    //用户信息删除
    private static void yonghuxinxishanchu(ArrayList<Yonghu> array)
    {


        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要删除的用户:");
        String sb=sc.nextLine();
        //删除修改前判断用户是否存在
        //遍历集合,找到对应的对象将其删除
        int index=-1;

        for(int i=0;i< array.size();i++){
            Yonghu sc1=array.get(i);

            if(sc1.getZhanghao().equals(sb)){
                index=i;
                break;

            }
        }

        if (index == -1){

            System.out.println("该用户不存在,请重新输入!");
        }else {
            array.remove(index);
            System.out.println("删除该用户成功!");

        }
    }



}


  • 写回答

1条回答 默认 最新

  • ohmyGG 2022-12-01 18:52
    关注

    已解决了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月9日
  • 已采纳回答 12月1日
  • 创建了问题 12月1日

悬赏问题

  • ¥15 已知许多点位,想通过高斯分布来随机选择固定数量的点位怎么改
  • ¥15 怎么生成确定数目的泊松点过程
  • ¥15 layui数据表格多次重载的数据覆盖问题
  • ¥15 python点云生成mesh精度不够怎么办
  • ¥15 QT C++ 鼠标键盘通信
  • ¥15 改进Yolov8时添加的注意力模块在task.py里检测不到
  • ¥50 高维数据处理方法求指导
  • ¥100 数字取证课程 关于FAT文件系统的操作
  • ¥15 如何使用js实现打印时每页设置统一的标题
  • ¥15 安装TIA PortalV15.1报错