1·对称字符串问题
逆序后对比即可。
ublic static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("输入字符串");
String a=sc.nextLine();
StringBuilder sb=new StringBuilder(a);
sb.reverse();
System.out.println(sb);
String str=sb.toString();
if(str.equalsIgnoreCase(a)){
System.out.println("是对称字符串");
}else {
System.out.println("不是对称字符串");
}
}
2·手机号隐私设置
核心在于substring的用法。
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入手机号");
String a=sc.nextLine();
//截取前三位
String start=a.substring(0,3);
String b="****";
//截取5位
String c=a.substring(7);
//输出结果
System.out.println(start+b+c);
}
3·把一组数据按照指定格式拼接为字符串返回
核心在于设置判断条件,完成格式要求
public static void main(String[] args) {
int arr[]={1,2,3};
System.out.println(addToString(arr));
}
private static StringBuilder addToString(int[] arr) {
StringBuilder sb = new StringBuilder();
System.out.println("执行方法后的输出结果为:");
sb.append("[");
for (int i = 0; i < arr.length; i++) {
if(i==arr.length-1){
sb.append(arr[i]);
}else
sb.append(arr[i]+" ,");
}
sb.append("]");
return sb;
}
4· 身份证信息的查看
核心在于 sbustring()的用法,ascii码的使用
System.out.println("男性为奇数,女性为偶数");
Scanner sc=new Scanner(System.in);
System.out.println("请输入出生日期以及性别");
String a=sc.nextLine();
//获取出生日期
String b=a.substring(0,4);
String c=a.substring(4,6);
String d=a.substring(6,8);
//获取男女性别
char f=a.charAt(8);
//利用ascii码转变
// '0'-----48
// '9'-----57
int num=f-48;
char g;
if(num%2!=0){
g='男';
}else
g='女';
//设计ui
System.out.println("人物信息为");
System.out.println("出生年月日:"+b+"年"+c+"月"+d+"日");
System.out.println("性别为:"+g);
}
5·将一组字符串转换为大写(罗马)数字
核心在于将字符串中每个字符表示出来,并将其与 大写 数组联系起来
//要求一:长度小于等于9
//要求二:只能是数字
//注意,罗马数字没有0,键盘录入的数字包含0,可以变成" " (长度为0的字符串)
import java.util.Scanner;
public class 转换罗马数字 {
public static void main(String[] args) {
//接收一个字符串
Scanner sc = new Scanner(System.in);
System.out.print("请输入字符串:");
String sb = sc.nextLine();
//判断此字符串是否符合题意
if(check(sb)){
//转换方法,利用循环取出字符串每个字符
for (int i = 0; i < sb.length(); i++) {
String a = String.valueOf(sb.charAt(i));
method(a);
}
}else
System.out.println("输入的字符串不符合题目");
}
private static boolean check(String sb) {
//长度小于9
if(sb.length()>9){
return false;
}
//只能为数字0~9
for (int i = 0; i < sb.length(); i++) {
char a=sb.charAt(i);
if(a<'0' || a>'9'){
return false;
}
}
return true;
}
private static void method(String a) {
String temp = a;
switch (temp) {
case "1":
System.out.print("一");
break;
case "2":
System.out.print("二");
break;
case "3":
System.out.print("三");
break;
case "4":
System.out.print("四");
break;
case "5":
System.out.print("五");
break;
case "6":
System.out.print("六");
break;
case "7":
System.out.print("七");
break;
case "8":
System.out.print("八");
break;
case "9":
System.out.print("九");
break;
case "0":
System.out.print(" ");
break;
}
}
}