一、需求说明:实现用户注册、登陆功能;

  1. 程序中使用一个长度为3的对象数组,存储用户的登录名和密码:

    例如如下格式:

   登录名    密码      生日           爱好

zhangsan

1111

1998-03-15

旅游,唱歌

lisi

2222

2002-05-20

吃饭,睡觉,打豆豆

wangwu

3333

2001-07-28

看书,看电影,旅游

    注册时,要判断数组是否已满,是:则禁止注册。

  1. 循环为用户列出菜单:

    1.注册     2.登陆     3.退出

    用户选择1,调用:registe()方法,执行注册流程;

    用户选择2,调用:login()方法,执行登陆流程;

    用户选择3,结束程序;

  1. 编写方法:registe(),执行注册流程:

   l  要求用户输入以下信息(信息无需校验):

用户名:

登录密码:

出生日期:

爱好:(多个爱好中间用逗号(中英文都可以)隔开)

    1. 编写方法:login(),执行登陆流程:

      l  请用户输入登录名、登陆密码;

      l  使用登录名和密码进行验证;

        通过:打印:这个用户的所有信息;

        未通过:打印:用户名或密码错误!

import java.util.Scanner;
/*
* 关于返回值为void的功能函数,其后增加return语句的作用的解释如下:
* 无返回值函数 没有返回值的return语句只能用在返回类型是void的函数中。
返回void的函数不要求非得有return语句,因为在这类函数的最后一句后面会隐含地执行return。
通常情况下,void函数如果想在它的中间位置提前退出,可以使用return语句。return的这种用法有点类似于我们用break语句退出循环。
一个返回类型是void的函数也能使用return语句的第二种形式,不过此时return语句的expression必须是另一个返回void的函数。
强行令void函数返回其他类型的表达式将产生编译错误。
摘自:
https://www.cnblogs.com/wuchanming/p/3895337.html
* */ public class Task001 {
public static User[] userArray = new User[3];
public static int index = 0; public static void main(String[] args) {
//下标值
Scanner sc = new Scanner(System.in);
while(true){ System.out.println("1.注册\t2.登录\t3.退出");
int input = sc.nextInt();
switch(input){
case 1:
registe();
break;
case 2:
login();
break;
case 3:
System.out.println("谢谢使用!");
System.exit(0);
break;
default:
break;
}
} }
public static void registe(){
/* 例如如下格式:
登录名 密码 生日 爱好
zhangsan 1111 1998-03-15 旅游,唱歌
lisi 2222 2002-05-20 吃饭,睡觉,打豆豆
wangwu 3333 2001-07-28 看书,看电影,旅游
注册时,要判断数组是否已满,是:则禁止注册。*/
Scanner sc = new Scanner(System.in);
if(index > userArray.length ){
System.out.println("数据库已满");
return ;
} System.out.println("请输入用户名:");
String username = sc.next().trim();
System.out.println("请输入密码:");
String password = sc.next().trim();
System.out.println("请输入生日:");
String birthday = sc.next().trim();
System.out.println("请输入爱好,不同爱好用,隔开");
String hobby = sc.next().trim();
User user = new User(username,password,birthday,hobby);
userArray[index] = user;
index++;
System.out.println("注册成功!!!");
} //登录方法
public static void login(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入用户名:");
String username = sc.next().trim();
System.out.println("请输入密码:");
String password = sc.next().trim();
for (int i = 0; i < userArray.length; i++) {
if(username.equals(userArray[i].getUsername()) && password.equals(userArray[i].getPassword())){
System.out.println("登录成功,你的个人信息为:");
System.out.println("用户名为:"+userArray[i].getUsername()+"生日为"+userArray[i].getBirthday()+"爱好为:"+userArray[i].getHobby());
}
}
System.out.println("你输入的账号或者密码不正确!!!");
}
}

user 用户类:

public class User {
private String username;
private String password;
private String birthday;
private String hobby; //全参/空参构造方法 public User(){}
public User(String username,String password,String birthday,String hobby){
this.username = username;
this.password = password;
this.birthday = birthday;
this.hobby = hobby;
} public String getUsername(){
return username;
}
public void setUsername(String username){
this.username = username;
}
public String getPassword(){
return password;
}
public void setPassword(String password){
this.password = password;
}
public String getBirthday(){
return birthday;
}
public void setBirthday(String birthday){
this.birthday = birthday;
}
public String getHobby(){
return hobby;
}
public void setHobby(String hobby){
this.hobby = hobby;
}
}

String/StringBuilder 类 用对象数组实现登录注册功能的更多相关文章

  1. vue koa2 mongodb 从零开始做个人博客(一) 登录注册功能前端部分

    0.效果演示 插入视频插不进来,就很烦.可以出门右拐去优酷看下(点我!). 1.准备工作 1.1前端框架 前端使用了基于vue.js的nuxt.js.为什么使用nuxt.js? 首先我做的是博客的项目 ...

  2. Java Spring+Mysql+Mybatis 实现用户登录注册功能

    前言: 最近在学习Java的编程,前辈让我写一个包含数据库和前端的用户登录功能,通过看博客等我先是写了一个最基础的servlet+jsp,再到后来开始用maven进行编程,最终的完成版是一个 Spri ...

  3. JAVAEE_Servlet_20_登录注册功能

    实现登录注册功能 注册功能 import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import j ...

  4. SSM 实现登录注册功能

    1.上一篇SSM框架搭建好了之后就要开始写功能了,现在来写一个简单的登录注册功能 这几个包是自己手动创建的,然后往里面写代码 2.代码详情 package com.maike.controller; ...

  5. flask 开发用户登录注册功能

    flask 开发用户登录注册功能 flask开发过程议案需要四个模块:html页面模板.form表单.db数据库操作.app视图函数 1.主程序 # app.py # Auther: hhh5460 ...

  6. Node.js实现登录注册功能

    使用Node.js + Navicat for mysql实现的登录注册功能 数据库中存在有”user_id,user_name,password,user_img,user_number“字段,其中 ...

  7. java创建自定义类的对象数组

      1 public class Student{ 2 static int number = 0; // 静态变量的访问可以不用创建类的实例就可就可使用< 类名.属性 >的方法访问 3 ...

  8. JAVAEE——宜立方商城11:sso登录注册功能实现、通过token获得用户信息、Ajax跨域请求(jsonp)

    1. 学习计划 第十一天: 1.sso注册功能实现 2.sso登录功能实现 3.通过token获得用户信息 4.Ajax跨域请求(jsonp) 2. Sso系统工程搭建 需要创建一个sso服务工程,可 ...

  9. JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

随机推荐

  1. 本地安装phpcms步骤

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u012145816/article/details/72183032 http://download ...

  2. BEGIN_MESSAGE_MAP

    宏定义的一种.在BEGIN_MESSAGE_MAP()和END_MESSAGE_MAP()之间添加你的消息响应函数,为每个消息处理函数加入一个入口 简单用法 BEGIN_MESSAGE_MAP(Cpa ...

  3. UOJ#454. 【UER #8】打雪仗

    UOJ#454. [UER #8]打雪仗 http://uoj.ac/problem/454 分析: 好玩的通信题~ 把序列分成三块,\(bob\)先发出这三块中询问点最多的一块给\(alice\). ...

  4. 学习动态性能表(15)--v$rollstat

    学习动态性能表 第15篇--V$ROLLSTAT  2007.6.12 本视图自启动即保持并记录各回滚段统计项.在学习本视图之前,我们先来了解一下回滚段(rollback segment)的相关概念: ...

  5. Python List reverse()方法

    reverse() 函数用于反向列表中元素,参数 NA,该方法没有返回值,但是会对列表的元素进行反向排序,原来的列表被改变,生成新的列表. 例子:list1 = ['Google', 'Runoob' ...

  6. 修改分区后的 Grub rescue

    声明:这里用到的知识不是原创,综合了几篇教程的成果.找的时候比较混乱,所以来源已经不确定.希望原作者见谅. 系统是Windows 8.1 和 Ubuntu 14.04, Windows是先装的, gr ...

  7. PKU campus 2018 A Wife——差分约束?/dp

    题目:http://poj.openjudge.cn/campus2018/A 有正规的差分约束做法,用到矩阵转置等等. 但也有简单(?)的dp做法. 有一个结论(?):一定要么在一天一点也不选,要么 ...

  8. Python 算法之冒泡排序

    冒泡排序 冒泡排序算法的原理如下:(从后往前) 1.比较相邻的元素.如果第一个比第二个大,就交换他们两个. 2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是 ...

  9. hihoCoder#1175拓扑排序应用

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho所在学校的校园网被黑客入侵并投放了病毒.这事在校内BBS上立刻引起了大家的讨论,当然小Hi和小Ho也参与到了 ...

  10. 【转】CSG(Closed Subscriber Group)闭合用户组

    CSG是3GPP R8中引入的概念,定义为闭合用户组.有以下特点: 1. 每个CSG由一个CSG ID标识 2. 同一用户可属于多个CSG,用户与CSG的关系就好比签约,启用了CSG小区只会允许签约用 ...