Kafka Git Jetson Nano qt gridview enums process count request swift2 Momentjs vue绑定事件 找公司做网站 node卸载命令 java数据分析 erp项目描述 删除数组第一个元素 mysql查看锁表 android常用布局 git下载项目 mysql获取当前时间戳 matlab跳出for循环 python实例 python图形界面开发 python当前日期 javase教程 java编程学习入门 java课程 java时间格式 java安装与配置 python开发实例 ipad锁屏 电脑密码查看器 mac画图工具 文章查重软件 深入解析windows操作系统 cad2008汉化包 无线网密码修改 python简单代码 xd下载
当前位置: 首页 > 学习教程  > 编程语言

java大程序

2020/12/28 19:38:22 文章标签:

一、 java模拟微博注册程序 要求使用HashSet集合实现。假设当用户输入用户名、密码、确认密码、生日(格式yyyy-mm-dd)、手机号码(长度11位,并且以13、15、17、18、19为开头)、邮箱(包含****符号&#xff0…

一、 java模拟微博注册程序

要求使用HashSet集合实现。假设当用户输入用户名、密码、确认密码、生日(格式yyyy-mm-dd)、手机号码(长度11位,并且以13、15、17、18、19为开头)、邮箱(包含**@**符号)信息后、判断信息输入是否正确,若正确,则验证用户是否重复注册,如果不重复则显示注册成功,否则显示用户重复

整体思路:分为三个类
1、 用户类:用户基本信息 有参无参构造方法 hashCode()和equals()方法的重写

public int hashCode(){
		return name.hashCode();
	}
public boolean equals(Object obj){
	if(this==obj){
		return true;
	}
	if(!(obj instanceof User)){
		return false;
	}
	User u=(User)obj;
	return name.equals(u.name);
}

2、用户信息验证类:定义用户基本信息数据USER_DATA

public static HashSet<User> USER_DATA;

构造方法 把用户基本信息数据导入

public Check(HashSet<User> data){
        	super();
        	USER_DATA=data;
    }

写了一个checkAction()方法验证所有信息
密码 生日 手机号 邮箱

public void checkAction(String name,String pwd,String rePwd,String birthday,String telNum,String email) 

并记录下成功的状态state
调用User的有参构造方法,如果成功,就直接添加进用户

User user=new User(name,pwd,birthday,telNum,email);
		if(!USER_DATA.add(user)){
			System.out.println("用户重复");
			state=2;
		}
		if(state==1){
			System.out.println("注册成功");
		}

3、用户操作类:
建立集合 存入用户数据

public static HashSet<User> USER_DATA=new HashSet<User>();

相应的输入信息提示:用户名,密码等
初始化信息 initData()

private static void initData() {
		User user1=new User("张三","zq,123","1998-04-23","18608681193","zhangsan@itcast.cn");
		User user2=new User("周琦","zz,123","2000-09-12","18618121193","zhouqi@itcast.cn");
		User user3=new User("张正","zz,123","1993-07-29","18810319240","zhangzheng@itcast.cn");
		USER_DATA.add(user1);
		USER_DATA.add(user2);
		USER_DATA.add(user3);
		
	}

二、KTV点歌系统

在这里插入图片描述

import java.util.*;
public class Test {

	public static void main(String[] args) {
		
		System.out.println("------------------欢迎来到点歌系统----------------");
		System.out.println("0.添加歌曲至列表");
		System.out.println("1.将歌曲置顶");
		System.out.println("2.将歌曲前移一位");
		System.out.println("3.退出");

		LinkedList<String> list = new LinkedList<String>(); // 创建歌曲列表
		addMusicList(list); // 添加一部分歌曲至歌曲列表
		System.out.println("当前歌曲列表:" + list);
		while (true) {
			System.out.println("请输入要执行的操作序号");
			Scanner sc = new Scanner(System.in);
			String str=sc.next();
			// 执行对应的功能
			switch (str) {
			case "0": // 添加歌曲至列表
				addSong(list);
				break;
			case "1": // 将歌曲置顶
				setTop(list);
				break;
			case "2": // 将歌曲前移一位
				setBefore(list);
				break;
			case "3": // 退出
				exit();
				break;
			default:
				System.out.println("功能选择有误,请输入正确的功能序号!!");
				break;
			}
			printList(list);
		}
	}
	//初始化添加
	private static void addMusicList(LinkedList<String> list) {
		String[] strArr={"我是一个粉刷匠","卖报纸","拔萝卜","小兔子乖乖","小跳蛙"};
		for(int i=0;i<strArr.length;i++){
			list.add(strArr[i]);
		}
		/*
		list.add("我是一个粉刷匠");
		list.add("卖报纸");
		list.add("拔萝卜");
		list.add("小兔子乖乖");
		list.add("小跳蛙");
		*/
	}
	//打印歌单
	public static void printList(LinkedList<String> list){
		System.out.println("当前歌单为:");
		Iterator<String> it=list.iterator();
		while(it.hasNext()){
			System.out.print(it.next()+" ");
		}
		System.out.println("\n");
	}
	//添加
	private static void addSong(LinkedList<String> list) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入要添加的歌曲名称:");
		String str = sc.next();
		list.add(str); // 将歌曲添加到列表最后
		System.out.println("已添加歌曲:"+str);
	}

	//置顶
	private static void setTop(LinkedList<String> list) {
		Scanner sc=new Scanner(System.in);
		System.out.print("请输入要置顶的歌曲名称:");
		String str=sc.next();
		
		int i=list.indexOf(str);//返回下标
		
		if(i<0) 
			System.out.println("当前列表没有这首歌曲");
		else {
			list.remove(str);
			list.addFirst(str);
		}
	}
	//提前一位
	private static void setBefore(LinkedList<String> list) {
		Scanner sc=new Scanner(System.in);
		System.out.print("请输入前移的歌曲名称:");
		String str=sc.next();
		
		int i=list.indexOf(str);//返回一个下标
		if(i<0)
			System.out.println("当前列表没有这首歌");
		else if(i==0)
			System.out.println("当前歌曲"+str+"已经在最前面");
		else {
			list.remove(str);
			list.add(i-1, str);

		}
	}
	//退出
	private static void exit() {
		System.out.println("您已退出点歌系统");
		System.exit(0);
	}
}


三、 java模拟银行登录程序

在这里插入图片描述
1.用户类 基本信息 有参无参构造方法 toString()重写
2.银行类 账户金额存入、取出和查询操作
定义初始金额和User

private int account;
private User user;

3.测试类
创建集合

public static HashMap<String,User> users=new HashMap<String,User>();

信息初始化

User u1=new User("1001","123456","黎明","13212345670",1000);
User u2=new User("1002","234576","黑夜","18215345670",1200);
User u3=new User("1003","103436","破晓","15512345670",1500);

输出结果:
在这里插入图片描述

四、小练习

选择合适的Map集合保存5位学员的学号和姓名,然后按照学号的自然存储顺序的倒序将这些键值对一一打印出来。

import java.util.*;
public class Test {
	public static void main(String[] args) {
		TreeMap<String,String> map=new TreeMap<String,String>();
		map.put("1", "Lucy");
		map.put("4", "Aimee");
		map.put("5", "Amanda");
		map.put("3", "Smith");
		map.put("2", "John");
		Set<String> set=map.keySet();
		Iterator<String> it=set.iterator();
		while(it.hasNext()){
			String key=it.next();
			System.out.println(key+":"+map.get(key));
		}
	}
}


本文链接: http://www.dtmao.cc/news_show_550333.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?