JAVA 关于String字符串的六个基础题

老师布置的作业写完了想保存一下代码
题目如下:
1 String s="hijavahehejavahejava";找出字符串中有几个java?

2 从键盘接收一个字符串,输出字符串里的大写字母数,小写英文字母数,非英文字母数

3 编程. 已知字符串:"this is a test of java".

按要求执行以下操作:

(1) 统计该字符串中字母s出现的次数

(2) 取出子字符串"test"

(3) 将本字符串复制到一个字符数组Char[] str中.

(4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台。

(5) 将该字符串的倒叙输出。

(6) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的英文单词,并输出到控制台

代码实现如下:
package zhuoye;

/**
 * Created by 74099 on 2018/4/18.
 */
public class text_3 {
    public static void main(String[] args) {
        String s = "this is a test of java";
        System.out.println("1) 统计该字符串中字母s出现的次数.");
        System.out.println(yi(s));
        System.out.println("2) 取出子字符串test.");
        er(s);
        System.out.println();
        System.out.println("3) 将本字符串复制到一个字符数组Char[] str中.");
        san(s);
        System.out.println();
        System.out.println("4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台.");
        si(s);
        System.out.println();
        System.out.println("5) 将该字符串的倒叙输出.");
        wu(s);
        System.out.println();
        System.out.println("6) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的英文单词,并输出到控制台.");
        liu(s);
    }

    private static int yi(String s) {
        // 1) 统计该字符串中字母s出现的次数.

        char[] a = s.toCharArray();
        int cou = 0;
        for (int i = 0; i < a.length; i++) {
            if (a[i] == 's') {
                cou++;
            }
        }
        return cou;
    }

    private static void er(String s) {
        // 2) 取出子字符串"test".

        String a = "test";
        int indexOf = s.indexOf(a);
        char[] arr = s.toCharArray();
        for (int i = indexOf; i < indexOf + a.length(); i++) {
            System.out.print(arr[i]);
        }

    }

    private static void san(String s) {
        // 3) 将本字符串复制到一个字符数组Char[] str中.

        char[] str = s.toCharArray();
        for (char i : str) {
            System.out.print(i);
        }

    }

    private static void si(String s) {
        // 4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台.

        String[] split = s.split(" ");//按空格分隔成数组
        for (int i = 0; i < split.length; i++) {
            // .substring(0,1) 截取数组的首字母   +split[i].substring(1); 再加上后面
            String s2 = split[i].substring(0, 1).toUpperCase() + split[i].substring(1);
            System.out.print(s2 + " ");
        }
    }

    private static void wu(String s) {
        // 5) 将该字符串的倒叙输出.
        char[] chars = s.toCharArray();
        for (int i = chars.length - 1; i >= 0; i--) {
            System.out.print(chars[i]);
        }
    }

    private static void liu(String s) {
        // 6) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的英文单词,并输出到控制台.
//        char[] chars = s.toCharArray();
//        for (int i = 0; i //            chars[i]='A';
//        }
        String str = "this is a test of java";
        String[] arr = str.split(" +");//+号
        System.out.println(arr.length);
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }


}

你可能感兴趣的:(计算机)