Java程序设计(六)作业

简介: Java程序设计(六)作业

题目1:编写一个程序,将一个字符串s尾部的m个字符移动到该字符串首部,例如字符串s为“abcdccutsoft”,M为8,则程序执行完毕后的结果为“ccutsoftabcd”。

//题目1:编写一个程序,将一个字符串S尾部的M个字符移动到该字符串首部,例如字符串S为“abcdccutsoft”,M为8,
//则程序执行完毕后的结果为“ccutsoftabcd”。
import java.util.*;
public class p3_1 {
    public static void main(String[] args) {
        System.out.println("请输入一个字符串S: ");
        Scanner input = new Scanner(System.in);
        String S = input.next();
        System.out.println("请输入M: ");
        int M = input.nextInt();
        int x;
        x = S.length() - M;
        String s1 = S.substring(x);
//    System.out.println(s1);
        String s2 = S.substring(0, x);
//    System.out.println(s2);
        StringBuffer s3 = new StringBuffer(s2);
        StringBuffer s4 = new StringBuffer(s1);
        s4.append(s3);
        System.out.println("程序执行完毕后的结果: ");
        System.out.println(s4);
    }
}

题目2:输入一个字符串,请判断是否满足身份证基本要求,并返回具体的生日yyyy-mm-dd。如果输入数据有误,请输出0000-00-00。基本要求是:a)必须是18位;b) 前面位数必须是数字,最后一位可以是数字或小写字母;c) 日期是存在的。输入样例53010219900508011x,输出样例:1990-05-08

//输入一个字符串,请判断是否满足身份证基本要求,并返回具体的生日yyyy-mm-dd。
//如果输入数据有误,请输出0000-00-00。基本要求是:a)必须是18位;b) 前面位数必须是数字,最后一位可以是数字或小写字母;c) 日期是存在的。
//输入样例53010219900508011x,输出样例:1990-05-08
import java.util.*;
public class p3_2 {
    public static void main(String[] args) {
        while (true) {
// 判断身份证号是否输入正确
            String regex = "(^[1-9]\\d{5}(19|20)\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$)";
            System.out.println("请输入您的身份证号: ");
            Scanner input = new Scanner(System.in);
            String id_s = input.next();
//截取日期验证是否存在
            String y_m = id_s.substring(6, 14);
            int int_ym = Integer.parseInt(y_m);
//截取年
            String year = id_s.substring(6, 10);
//截取月
            String month = id_s.substring(10, 12);
//截取日
            String day = id_s.substring(12, 14);
            if (id_s.matches(regex)) {
                if (int_ym < 20220529) {
                    System.out.println("您的出生日期是:\n" + year + "-" + month + "-" + day);
                } else {
                    System.out.println("0000-00-00");
                }
            }
        }
    }
}
相关文章
|
3月前
|
Java
Java基础学习day08-作业
本作业涵盖Java中Lambda表达式的应用,包括Runnable与Comparator接口的简化实现、自定义函数式接口NumberProcessor进行加减乘及最大值操作,以及通过IntProcessor处理整数数组,实现遍历、平方和奇偶判断等功能,强化函数式编程实践。
84 5
|
3月前
|
Java
Java基础学习day07-作业
本作业包含六个Java编程案例:1)动物类继承与多态;2)加油卡支付系统;3)员工管理类设计;4)学生信息统计接口;5)USB设备控制;6)家电智能控制。综合运用抽象类、接口、继承、多态等面向对象技术,强化Java基础编程能力。
187 3
|
3月前
|
Java
Java基础学习day06-作业
本内容为Java基础学习作业,涵盖两个案例:一是通过Card类及其子类GoldenCard、SilverCard实现加油卡系统,体现封装与继承;二是通过Shape类及子类Circle、Rectangle演示多态与方法重写,强化面向对象编程理解。
97 1
|
3月前
|
算法 Java
Java基础学习day03-作业
本内容包含多个Java编程案例,涵盖条件判断、循环、数组、随机数生成、素数判断等基础算法练习,适用于巩固Java语法与逻辑思维训练。
144 6
|
3月前
|
Java
Java基础学习day05-作业
本文为Java基础学习第五天作业,通过五个案例练习类与对象的定义、构造方法、set/get方法及成员方法的应用。涵盖女友、学生、教师、手机和电影等类的设计与测试,强化面向对象编程基础。
92 2
|
3月前
|
Java
Java基础学习day02-作业
本内容包含13个Java编程练习需求,涵盖变量定义、数据类型转换、运算符使用、键盘输入及条件判断等基础语法实践,适合初学者巩固Java核心基础知识。
109 5
|
3月前
|
Java
Java基础学习day04-作业
本作业包含8个Java编程案例,涵盖数组的定义与遍历、求和、最值计算、去极值求平均、元素倍增、二维数组行和计算及查找指定元素等内容,旨在巩固Java基础语法与数组操作技能。
251 1
|
Java
Java基础学习day01-作业
通过多个Java编程案例,学习变量定义、数据类型使用及控制台输出。涵盖字符串、数值、布尔值等字面量输出,变量赋值与修改,以及实际应用场景如学生信息和商品价格变化的模拟,夯实基础语法掌握。
136 0
|
Java Apache Maven
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
170 6
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
|
6月前
|
机器学习/深度学习 存储 算法
Java 大视界 -- Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用(165)
本文围绕 Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用展开,剖析作业现状与挑战,阐述技术原理及应用方法,结合案例与代码,给出具有实操性的解决方案。
Java 大视界 -- Java 大数据在智能农业无人机植保作业路径规划与药效评估中的应用(165)