纯java代码在控制台运算电话本(不使用数据库)
分享学习
Task_08
package cn.rzpt; import java.util.List;
import java.util.Scanner; public class Task_08 {
private static TelBook telBook = new TelBook();
public static String init() {
System.out.println("----------------------电话本管理系统----------------------");
String operations[] = telBook.getOperations();
for(int i = 0 ; i < operations.length;i++)
{
System.out.print(i+operations[i]+"\t");
}
System.out.println("\n----------------------电话本管理系统----------------------");
System.out.print("请选择业务:");
String input = new Scanner(System.in).nextLine();
return input;
}
public static void main(String[] args) {
String input = init();
List<User> users = telBook.getUsers();
//添加
if(input.equals("1"))
{
System.out.println("\n----------------------添加电话本----------------------");
System.out.print("姓名:");
String name = new Scanner(System.in).nextLine();
System.out.print("性别:");
String gender = new Scanner(System.in).nextLine();
System.out.print("年龄:");
String age = new Scanner(System.in).nextLine();
System.out.print("电话:");
String tel = new Scanner(System.in).nextLine();
System.out.print("QQ:");
String QQ = new Scanner(System.in).nextLine();
System.out.print("地址:");
String address = new Scanner(System.in).nextLine();
User user = new User(name,gender.equals("男"),Integer.parseInt(age),tel,QQ,address);
users.add(user);
System.out.println(user);
System.out.println("添加成功");
main(args);
} if(input.equals("2"))
{
System.out.println("\n----------------------删除电话本----------------------");
System.out.print("请输入删除的姓名:");
String name = new Scanner(System.in).nextLine();
if(users.indexOf(new User(name)) == -1)
{
System.out.println("此人不存在");
}
else
{
User user = users.get(users.indexOf(new User(name)));
System.out.println(user);
System.out.println("确定吗?1(是)0(否)");
String select = new Scanner(System.in).nextLine();
if(select.equals("1"))
{
users.remove(user);
System.out.println("删除成功");
}
if(select.equals("0"))
{
System.out.println("取消成功");
}
}
main(args);
} if(input.equals("3"))
{
System.out.println("\n----------------------修改电话本----------------------");
System.out.print("输入姓名");
String name = new Scanner(System.in).nextLine();
if(users.indexOf(new User(name)) == -1)
{
System.out.println("此人不存在");
}
else
{
User user = users.get(users.indexOf(new User(name)));
System.out.println(user);
System.out.println("请输入信息");
System.out.println("姓名:"+user.getName());
System.out.print("性别:");
String gender = new Scanner(System.in).nextLine();
System.out.print("年龄:");
String age = new Scanner(System.in).nextLine();
System.out.print("电话:");
String tel = new Scanner(System.in).nextLine();
System.out.print("QQ:");
String QQ = new Scanner(System.in).nextLine();
System.out.print("地址:");
String address = new Scanner(System.in).nextLine();
user = new User(name,gender.equals("男"),Integer.parseInt(age),tel,QQ,address);
users.add(user);
System.out.println(user);
System.out.println("修改成功");
}
main(args);
}
if(input.equals("4"))
{
System.out.println("\n----------------------打印所有电话本----------------------");
for (User user : users) {
System.out.println(user);
}
main(args);
} if(input.equals("5"))
{
System.out.println("\n----------------------查找电话本----------------------");
System.out.print("输入姓名");
String name = new Scanner(System.in).nextLine();
if(users.indexOf(new User(name)) == -1)
{
System.out.println("此人不存在");
}
else
{
User user = users.get(users.indexOf(new User(name)));
System.out.println(user);
}
main(args);
}
if(input.equals("0"))
{
System.out.println("退出成功");
System.exit(0);
}
} }
TelBook
package cn.rzpt; import java.util.ArrayList;
import java.util.List; public class TelBook {
private final static String operations[] = {".退出",".添加",".删除",".修改",".查询所有",".根据姓名查询"};
private List<User> users = new ArrayList<User>();
public List<User> getUsers() {
return users;
}
public void setUsers(List<User> users) {
this.users = users;
}
public static String[] getOperations() {
return operations;
} }
User
package cn.rzpt; public class User{
private String name;
private boolean gender;
private int age;
private String tel;
private String QQ;
private String address;
public User(String name) {this.name = name;}
public User(String name, boolean gender, int age, String tel, String qQ, String address) {
super();
this.name = name;
this.gender = gender;
this.age = age;
this.tel = tel;
QQ = qQ;
this.address = address;
} public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public boolean isGender() {
return gender;
}
public void setGender(boolean gender) {
this.gender = gender;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
}
public String getQQ() {
return QQ;
}
public void setQQ(String qQ) {
QQ = qQ;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "姓名:" + name + ", 性别:" + (gender?"男":"女") + ", 年龄:" + age + ", 电话:" + tel + ", QQ:" + QQ
+ ", 地址:" + address;
} @Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((name == null) ? 0 : name.hashCode());
return result;
} @Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
User other = (User) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
} }
纯java代码在控制台运算电话本(不使用数据库)的更多相关文章
- 基于纯Java代码的Spring容器和Web容器零配置的思考和实现(3) - 使用配置
经过<基于纯Java代码的Spring容器和Web容器零配置的思考和实现(1) - 数据源与事务管理>和<基于纯Java代码的Spring容器和Web容器零配置的思考和实现(2) - ...
- Android 使用纯Java代码布局
java布局 java代码布局和xml布局的区别 1.Java纯布局更加的灵活,比如自定义控件或一些特殊要求时,使用java代码布局 2.常用的xml布局是所见即所得的编写方式,以及xml本身拥有一些 ...
- DataX通过纯Java代码启动
DataX是阿里巴巴团队开发的一个很好开源项目,但是他们对如何使用只提供了python命令启动方式,这种方式对于只是想简单的用下DataX的人来说很是友好,仅仅需要几行代码就可以运行,但是如果你需要在 ...
- 帧动画的创建方式 - 纯Java代码方式
废话不多说,先看东西 帧动画的创建方式主要以下2种: * 用xml创建动画: * 纯Java代码创建动画: 本文内容主要关注 纯java代码创建帧动画 的方式: 用xml创建帧动画:http:// ...
- 在Android中用纯Java代码布局
感谢大佬:https://www.jianshu.com/p/7aedea560f16 在Android中用纯Java代码布局 本文的完成了参考了一篇国外的教程,在此表示感谢. Android中的界面 ...
- 用java中的Arraylist实现电话本系统管理
大致思路:创建一个电话本条目的类,在主类中实例化.用实例化的对象调用构造参数接收输入值,然后将此对象存入Arraylist的对象中,实现动态添加电话本条目. 该系统具备添加.删除.修改.查询所有和按姓 ...
- Android Studio编写运行测试纯java代码可带main()函数
问题 小伙伴们在做安卓项目的时候,是不是有时候会忘记某些api的使用方法,不太确定他们的结果是怎样的,需要写一些测试代码,验证看看我们的写法是否正确.刚开始的时候我是在页面上写一个Button,添加点 ...
- 纯Java代码 图片压缩
Java图片压缩代码 package com.img; import java.awt.Image; import java.awt.image.BufferedImage; import java. ...
- 通过纯Java代码从excle中读取数据(为.xlsx文件)
参考链接: 程序代码: package demo; import java.io.File; import java.io.IOException; import java.io.InputStrea ...
随机推荐
- Dubbo系列之 (五)服务订阅(2)
辅助链接 Dubbo系列之 (一)SPI扩展 Dubbo系列之 (二)Registry注册中心-注册(1) Dubbo系列之 (三)Registry注册中心-注册(2) Dubbo系列之 (四)服务订 ...
- 微信access token过期
两台服务器使用同一个微信账号(同一个app id) 时,当其中一台服务器向微信请求access token时,会造成另一台服务器的access token过期
- dive:一款按层分析docker镜像的工具
原文链接:https://www.freebuf.com/sectool/191596.html 要分析Docker镜像,只需使用image tag/id/digest运行: dive <you ...
- Linux环境下如何生成core文件
Linux环境下进程发生异常而挂掉,通常很难查找原因,但是一般Linux内核给我们提供的核心文件,记录了进程在崩溃时候的信息.但是生成core文件需要设置开关,具体步骤如下: 1.查看生成core文件 ...
- 在服务器上使用python-gym出现的显示问题
参考链接: http://www.luyixian.cn/news_show_392045.aspx https://www.cnblogs.com/cenariusxz/p/12666938.htm ...
- Reliable Federated Learning for Mobile Networks
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 以下是对本文关键部分的摘抄翻译,详情请参见原文. arXiv: 1910.06837v1 [cs.CR] 14 Oct 2019 Abst ...
- Markdown - Typora 10分钟入门 - 精简归纳
Markdown - Typora 10分钟入门 - 精简归纳 JERRY_Z. ~ 2020 / 8 / 22 转载请注明出处! 目录 Markdown - Typora 10分钟入门 - 精简归纳 ...
- OpenCV(Open Source Computer Vision Library)计算机视觉库
OpenCV(最基本的滤波到高级的物体检测皆有涵盖) 简介: OpenCV 是跨平台的,可以在 Windows.Linux.Mac OS.Android.iOS 等操作系统上运行. OpenCV 的 ...
- 【Android】AndroidStudio(Eclipse)如何使用天天模拟器进行调试apk应用。
作者:程序员小冰,GitHub主页:https://github.com/QQ986945193 新浪微博:http://weibo.com/mcxiaobing 大家都知道,我们这些Android开 ...
- wxmini
微信小游戏架构概览 https://www.jianshu.com/p/02199c35d749 微信小程序:工具配置 project.config.json https://www.cnblogs. ...