目录
- 任务1、确定给定日期是一年的第几天
- 任务 2、构建可进不可退的多级菜单系统
任务1、确定给定日期是一年的第几天
- 要求输入年、月、日,最好能判断用户输入的是否是合法日期
- 比如2022年3月31日, 那是今年的第90天(31 + 28 + 31 = 90)
- 比如2000年3月31日,那是2000年的第91天(31 + 29 + 31 = 91)
任务 2、构建可进不可退的多级菜单系统

- 采用开关式多分支结构来实现菜单系统
- 在net.yangxinying.p02.t03包里创建XExercise02类
- 先完成一级菜单
package net.yangxinying.p02.t03;
import java.util.Scanner;
/**
* 功能:
* 作者:杨鑫莹
* 日期:2022年04月07日
*/
public class Xexercise02 {
public static void main(String[] args) {
//声明部分
int mc1, mc2;
Scanner sc = new Scanner(System.in);
//绘制一级菜单
System.out.println(" 名片管理系统");
System.out.println("===================");
System.out.println(" 1. 登录");
System.out.println(" 0. 退出");
System.out.println("===================");
System.out.print("输入菜单选项[1,0]: ");
//根据用户选择执行相应操作
mc1 = sc.nextInt();
switch (mc1) {
case 1:
//调用登录方法
login();
break;
case 0:
System.out.println("谢谢使用~再见~");
break;
default:
System.out.println("输入的菜单编号有误!");
}
}运行程序,查看结果



- 采用模块化思想,创建一个登录方法 - login(),然后再用户选择1菜单项时调用它
- 编写login()方法
- 登录成功之后,定义名片管理方法 - cardManagment()
- 编写cardManagement()方法代码
- 运行程序,测试名片管理方法





-现在这个菜单系统是可进但是不可退,有一个入口,但有多个入口,等我们学了循环结构之后,我们可以改进这个菜单系统,使之成为可进可退的多级菜单系统,保证系统只有唯一的入口和唯一的出口
package net.yangxinying.p02.t03;
import java.util.Scanner;
/**
* 功能:
* 作者:杨鑫莹
* 日期:2022年04月07日
*/
public class Xexercise02 {
public static void main(String[] args) {
//声明部分
int mc1, mc2;
Scanner sc = new Scanner(System.in);
//绘制一级菜单
System.out.println(" 名片管理系统");
System.out.println("===================");
System.out.println(" 1. 登录");
System.out.println(" 0. 退出");
System.out.println("===================");
System.out.print("输入菜单选项[1,0]: ");
//根据用户选择执行相应操作
mc1 = sc.nextInt();
switch (mc1) {
case 1:
//调用登录方法
login();
break;
case 0:
System.out.println("谢谢使用~再见~");
break;
default:
System.out.println("输入的菜单编号有误!");
}
}
/**
* 登录方法
*/
private static void login() {
String username, password;
Scanner sc = new Scanner(System.in);
System.out.print("用户名:");
username = sc.next();
System.out.print("密 码:");
password = sc.next();
if(username.equals("yang") && password.equals("200312")) {
System.out.println("登录成功~");
//调用名片管理方法
cardManagement();
}else {
System.out.println("用户名或密码有误,登录失败~");
}
}
/**
* 名片管理方法
*/
private static void cardManagement(){
int mc2;
Scanner sc = new Scanner(System.in);
//绘制二级菜单
System.out.println("====名片管理=====");
System.out.println(" 1. 添加名片");
System.out.println(" 2. 修改名片");
System.out.println(" 3. 查询名片");
System.out.println(" 4. 删除名片");
System.out.println("=================");
System.out.print("输入菜单编号[1,2,3,4]:");
mc2 = sc.nextInt();
switch (mc2) {
case 1:
System.out.println("执行添加名片功能~");
break;
case 2:
System.out.println("执行修改名片功能~");
break;
case 3:
System.out.println("执行查询名片功能~");
break;
case 4:
System.out.println("执行删除名片功能~");
break;
default:
System.out.println("输入的菜单编号有误!");
}
}
}
















