为了账号安全,请及时绑定邮箱和手机立即绑定

如何修复while循环错误登录注销系统(无数据库)(还有关于会话时间的代码)?

如何修复while循环错误登录注销系统(无数据库)(还有关于会话时间的代码)?

喵喵时光机 2022-06-04 10:43:12
我使用为我的学校作业提供的唯一用户名创建了一个基本的登录和注销系统(无数据库),但我在 while 循环和会话时间方面遇到了问题。我尝试将一组代码复制并粘贴到此主代码的不同部分,以便获得预期的结果,但结果有点错误。我试图在互联网上搜索有关会话时间的信息,但一无所获。  while (login =  true){      try {          System.out.println("Enter your name:");          String name = cue.nextLine();          System.out.println("--------------------");          System.out.println("");          System.out.println("Date and Time of Login:");          System.out.println(dtf.format(now));          System.out.println("");          System.out.println("--------------------");          System.out.println();          System.out.println("Enter your name to log out:");          String logout = cue.nextLine();          System.out.println("");          if (logout.equals(name)){              System.out.println("--------------------");              System.out.println("");              System.out.println("Date and Time of Logout:");              System.out.println(dtf.format(now));              System.out.println("Session Time:");              /*can you also please tell me what code to tell the gap between the               login time and log out time?*/              System.out.println("");              System.out.println("--------------------");              login = false;            } else {                login = true;            }        } catch (Exception e){          cue.nextLine();      } finally{          System.out.println("Do you want to register again? 0 for yes and 1 for no");          int no = cue.nextInt();          if (no==0) {              login = true;          } else if (no==1) {                System.exit(1);          } else {              System.out.println("1 or 0 only!");          }         }}这必须是预期的输出:如果名称正确:Enter your name:nmae--------------------Date and Time of login:2019/02/03 16:38:46--------------------Enter your name to log out:nmae--------------------
查看完整描述

2 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

要获得不同的 beetwen 登录时间和注销时间,您可以使用Durationjava8 中的类:


loginTime = LocalDateTime.now();

...

logoutTime = LocalDateTime.now();


Duration.between(loginTime, logoutTime).getSeconds();


查看完整回答
反对 回复 2022-06-04
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

您正在返回错误级别 1,这是程序终止向操作系统返回错误的方式。我无法测试是因为我不使用 Windows,但您可以尝试System.exit(1)System.exit(0).



查看完整回答
反对 回复 2022-06-04
  • 2 回答
  • 0 关注
  • 140 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号