String类常用方法:字符串的截取和分割 例通过键盘输入用户身份证号码,如615523199008086060,提取并显示该用户的生日
时间: 2024-12-24 07:24:52 浏览: 5
在Java中,`String` 类提供了许多有用的方法来进行字符串操作,包括截取和分割。对于身份证号码这样的字符串,我们可以使用特定的逻辑来提取出生日期。
首先,我们需要明确身份证号码的结构,通常中国身份证号码由18位组成,前6位代表省份、城市和区县代码,接下来8位为出生年月日(YYYYMMDD),最后4位为顺序码加校验码。提取生日的部分,我们可以从第7位到第15位进行截取。
下面是一个简单的例子,展示了如何使用`substring` 方法截取字符串:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入身份证号码:");
String idNumber = scanner.nextLine();
// 提取出生日期
String birthday = idNumber.substring(6, 14); // 截取第7位到第15位
System.out.println("用户的生日是:" + birthday);
scanner.close();
}
}
```
在这个例子中,`substring` 方法接受两个参数,第一个是从开始位置(包含)开始截取,第二个是到结束位置(不包含)为止。所以,我们从第7位(索引从0开始计数)开始截取,直到第15位(不包括15位)。
如果你希望按照“年-月-日”的格式输出,可以进一步处理生日字符串:
```java
// 如果需要格式化为"YYYY-MM-DD"
String formattedBirthday = String.format("%s-%02d-%02d", birthday.substring(0, 4), Integer.parseInt(birthday.substring(4, 6)), Integer.parseInt(birthday.substring(6, 8)));
System.out.println("用户的生日(格式化后)是:" + formattedBirthday);
```
阅读全文