Java学习记录 Day10(String类的经典算法)

Day 10

2019年4月21日。
这是我学习Java的第十天。
这一天,我学到了以下的知识。

String类的经典算法

  • 判断字符串中字符的唯一性
    要求:判断一个字符串中,某个字符只有一个
    代码如下
public class Test {
    public static void main(String[] args) {
        String string = new String();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        string = scanner.nextLine();
        /* 以字符a为例,若a在这个字符串中第一次出现的索引和最后一次出现的索引相同,
        则这个字符串中仅存在一个a */
        if (string.indexOf('a') == string.lastIndexOf('a')){ 
            System.out.println("a这个字符只有一个!");
        }
        else {
            System.out.println("a这个字符不只有一个!");
        }
        System.out.println(string);
    }
}
  • 反转录入字符串
    要求:从键盘上输入abcde,输出edcba
    代码如下
public class Test {
    public static void main(String[] args) {
        String string = new String();
        String string2 = new String();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        string = scanner.nextLine();
        // 反向遍历后将值赋入一个新的字符串
        for (int i = string.length() - 1; i >= 0; i--) {
            string2 += string.charAt(i);
        }
        System.out.println(string2);
    }
}
  • 字符串的大小写转换
    要求:从键盘上输入abcde,输出ABCDE
    代码如下
public class Test {
    public static void main(String[] args) {
        String string = new String();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        string = scanner.nextLine();
        System.out.println(string.toUpperCase());
    }
}
  • 从字符串中寻找指定字符串

    要求:从键盘上输入woyaoxuejava,xihuanjava,aijava,javajavawozuiai,判断其中出现了几次java
    代码如下

public class Test {
    public static void main(String[] args) {
        String string = new String();
        int tag = 0;
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        string = scanner.nextLine();
        for (int i = 0; i < string.length() - 4; i++) {
            if (string.substring(i,i+4).equals("java")){
                tag++;
            }
        }
        System.out.println(tag);
    }
}
  • 判断字符串中大写字母、小写字母、数字的个数

    要求:从键盘上输入数据,统计键盘录入的字符串中包含大写字母、小写字母、数字的个数
    代码如下

public class Test {
    public static void main(String[] args) {
        String string = new String();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        string = scanner.nextLine();
        int a = 0,b = 0,c = 0;
        for (int i = 0; i < string.length(); i++) {
            if (string.charAt(i) >= 'a' && string.charAt(i) <= 'z'){
                a++;
            }
            else if (string.charAt(i) >= 'A' && string.charAt(i) <= 'Z'){
                b++;
            }
            else if (string.charAt(i) >= '0' && string.charAt(i) <= '9'){
                c++;
            }
        }
        System.out.println("小写字母有:" + a + "大写字母有:" + b + "数字有:" + c);
    }
}

猜你喜欢

转载自blog.csdn.net/qq_41151659/article/details/89461729