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

  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. LeetCode OJ:Binary Tree Zigzag Level Order Traversal(折叠二叉树遍历)

    Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to ...

  2. Spring Boot 简单日志配置

    在生产环境中,只打印error级别的错误,在测试环境中,可以调成debugapplication.properties文件## 默认使用logback logging.level.root=error ...

  3. hdu1398 Square Coins(母函数)

    题目类似于整数拆分,很明显用母函数来做. 母函数的写法基本固定,根据具体每项乘式的不同做出一些修改就行了.它的思路是从第一个括号开始,一个括号一个括号的乘开,用c1数组保存之前已经乘开的系数,即c1[ ...

  4. C#异步编程(一)线程及异步编程基础

    最近试着做了几个.NET CORE的demo,看了些源码,感觉异步编程在Core里面已经成为主流,而对这块我还没有一个系统的总结,所以就出现了这篇文字,接下来几篇文章,我会总结下异步编程的思路,主要参 ...

  5. LeetCode Reverse String II

    原题链接在这里:https://leetcode.com/problems/reverse-string-ii/#/description 题目: Given a string and an inte ...

  6. eclipse Git & maven 安装

    JDK安装请自行百度. Maven是免安装的.压缩包解压完成后.如解压后放在D:\Server\maven下.接下来配置maven的环境变量: 系统变量:MAVEN_HOME = D:\Server\ ...

  7. php 服务器的安全笔记

    php 服务器的安全笔记 操作系统安全 默认端口修改 MySQL 端口禁止外网访问 用户权限 父进程 子进程 目录权限 TODO Web Server 版本信息 服务器版本信息 PHP 版本 open ...

  8. 玩转C链表

    链表是C语言编程中常用的数据结构,比如我们要建一个整数链表,一般可能这么定义: 1 2 3 4 struct int_node {         int val;         struct in ...

  9. bzoj 1798 [Ahoi2009]Seq 维护序列seq ——线段树

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1798 先乘后加,就可给加法标记乘上乘法标记. 注意可能有 *0 的操作,所以 pshd 时不 ...

  10. ConcurrentHashMap的扩容机制(jdk1.8)

    ConcurrentHashMap相关的文章网上有很多,而关于ConcurrentHashMap扩容机制是很关键的点,尤其是在并发的情况下实现数组的扩容的问题经常会碰到,看到这篇写的具有代表性,详细讲 ...