首页 > 其他分享 >string例题

string例题

时间:2022-11-11 09:47:15浏览次数:40  
标签:string int builder length chars2 chars1 例题 String

  1. 判断邮箱输入是否合法,并且判断输入的邮箱是否是新浪邮箱
private static void demo1() {
    System.out.println("请输入您的邮箱");
    String email = input.next();
    String emailRegex = "^([a-zA-Z0-9]{1,})(@)([a-zA-Z0-9]{2,5})(.)(com)$";
    System.out.println("输入邮箱格式: " + email.matches(emailRegex));
    String business = email.replaceAll(emailRegex, "$3");
    if ("sina".equals(business)) System.out.println("输入的邮箱为新浪邮箱");
}
  1. 判断字符串是否是回文字符串
private static void demo4() {
    String str=input.nextLine();
    StringBuilder builder=new StringBuilder(str);
    builder=builder.reverse();
    if(str.equals(builder.toString())) System.out.println(str+"是回文字符串");
}
  1. 忽略字符串所含字符的顺序,判断字符串是否一致

方法一:

private static void demo3() {
        String str1 = "ababcc";
        String str2 = "abcabc";
        int length = str1.length();
        char[] chars1 = str1.toCharArray();
//        for (int i = 0; i < length; i++) {
//            chars1[i] = str1.charAt(i);
//        }
        Arrays.sort(chars1);

//        for (int i = 1; i < length; i++) {
//            for (int j = 0; j < length - i; j++) {
//                if (chars1[j] > chars1[j + 1]) {
//                    char temp = chars1[j];
//                    chars1[j] = chars1[j + 1];
//                    chars1[j + 1] = temp;
//                }
//            }
//        }
        int length1 = str2.length();
        char[] chars2 = new char[length1];
        for (int i = 0; i < length1; i++) {
            chars2[i] = str2.charAt(i);
        }
        Arrays.sort(chars2);
//        for (int i = 1; i < length1; i++) {
//            for (int j = 0; j < length - i; j++) {
//                if (chars2[j] > chars2[j + 1]) {
//                    char temp = chars2[j];
//                    chars2[j] = chars2[j + 1];
//                    chars2[j + 1] = temp;
//                }
//            }
//        }
        str1 = new String(chars1);
        str2 = new String(chars2);
        if (str1.equals(str2)) System.out.println("输入字符串是一致");
    }

方法二:

private static void demo5() {
    String str="ababcc";
    String str2="abcabc";
    StringBuilder builder=new StringBuilder(str2);
    int length = str.length();
    for (int i = 0; i < length; i++) {
        char c = str.charAt(i);
        int i1 = builder.indexOf(String.valueOf(c));
        if(i1==-1){
            throw new RuntimeException("字符串不一致");
        }
        builder= builder.deleteCharAt(i1);

    }
    if(!builder.toString().isEmpty())throw new RuntimeException("字符串不一致");
    System.out.println("字符串一致");
}

标签:string,int,builder,length,chars2,chars1,例题,String
From: https://www.cnblogs.com/Liku-java/p/16879578.html

相关文章