3:String基础练习(文末有项目连接)

1:String说明
字符串作为特殊的引用类型
很多时候需要算法题中对其进行操作 因此需要熟悉常用API
2:常用方法总结
String类的常用方法 : 

public boolean equals(Object anObject)  比较字符串的内容,严格区分大小写

public boolean equalsIgnoreCase(String anotherString)  比较字符串的内容,忽略大小写

public int length()  返回此字符串的长度

public char charAt(int index)  返回指定索引处的 char 值

public char[] toCharArray()  将字符串拆分为字符数组后返回

public String replace(CharSequence target, CharSequence replacement)  使用新值,将字符串中的旧值替换,得到新的字符串

public String substring(int beginIndex, int endIndex)  根据开始和结束索引进行截取,得到新的字符串(包含头,不包含尾)

public String substring(int beginIndex)  从传入的索引处截取,截取到末尾,得到新的字符串

public String[] split(String regex)  根据传入的规则切割字符串,得到字符串数组
3:代码
public class StringBasics {

    public static void main(String[] args) {

        //输入String
        stringScannerTest();

        //测试char 转换成String
        charToString();

        //对String进行遍历
        stringForTest();

        //对String进行替换
        stringReplaceTest();

        //测试substring截取功能
        stringSubstringTest();

        //测试Split分割功能
        stringSplit();
    }


    /**
     * 输入String
     */
    private static void stringScannerTest() {
        //  1. 键盘录入一个字符串,用 Scanner 实现
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入:");
        String string = sc.nextLine();
        System.out.println("输出String:" + string);
        System.out.println("==============================================");
    }


    /**
     * 测试String 转换成 char
     */
    private static void charToString(){
        String string = "string";
        String[] strings = new String[10];
        char[] chars = new char[10];

        for (int i = 0;i < string.length() ; i++){
            chars[i] = string.charAt(i);
            strings[i] = String.valueOf(string.charAt(i));
        }

        System.out.println("打印chars"+chars);
        System.out.println("打印string"+strings);

    }

    /**
     * 对String进行遍历
     */
    private static void stringForTest() {
        String string1 = "hesuijin";
        for (int i = 0; i < string1.length(); i++) {
            //charAt(int index)  返回指定索引处的 char 值
            char c = string1.charAt(i);
            System.out.println(c);
        }
        System.out.println("==============================================");
        String string2 = "HSJ";
        //  将字符串拆分为字符数组
        char[] chars = string2.toCharArray();
        for (int i = 0; i < chars.length; i++) {
            System.out.println(chars[i]);
        }
    }

    /**
     * 对Sting 使用replace进行截取
     */
    private static void stringReplaceTest() {

        String string = "你好啊 hesuijin,血是红色的";
        // 2. 替换敏感词
        String result = string.replace("红","*");
        // 3. 输出结果
        System.out.println(result);
    }

    /**
     * 对Sting 使用substring进行截取
     */
    private static void stringSubstringTest() {
        String stringSubstring = "12345678901";

        // 1. 截取字符串前三位
        String start = stringSubstring.substring(0, 3);
        // 2. 截取字符串后四位
        String end = stringSubstring.substring(7);
        // 3. 将截取后的两个字符串,中间加上****进行拼接,输出结果
        System.out.println(start + "****" + end);

    }

    /**
     * 对Sting 使用split进行切割
     */
    private static void stringSplit() {

        String person = "HSJ,18";
        //  根据逗号切割字符串,得到HSJ  18
        String[] strings = person.split(",");

        for (int i = 0; i < strings.length; i++) {
            System.out.println(strings[i]);
        }

        String personSplit = "abcHSJabchesuijinabc";
        String[] stringsSplit = personSplit.split("abc");
        for (int i = 0; i < stringsSplit.length; i++) {
            System.out.println(stringsSplit[i]);
        }
    }
}

项目连接

请配合项目代码食用效果更佳:
项目地址:
https://github.com/hesuijin/hesuijin-algo
Git下载地址:
https://github.com.cnpmjs.org/hesuijin/hesuijin-algo.git

algoBasics包
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天是宇宙公民阅读训练营的第21天,过了今天(2021.5.14),我们就要从阅读训练营毕业啦! 怀揣不舍的心情,...
    转折点阅读 1,118评论 0 0
  • 学习笔记: 1.我感受比较深的是什么呢?如果是平时有交集的朋友,帮帮忙无所谓,但,一个连朋友圈也没给我点过赞的陌生...
    正版瓷心鱼阅读 1,098评论 0 0
  • 今日洛市一模 2021-05-13 洛市一模今怼开, 规格须按中招来。 学具全部放室外, 桌子一律翻斗摆。 周边相...
    千里马会军阅读 988评论 0 0
  • 20210512第五周锦囊作业 (K11组 董苏萱) 本周作业有3项: 一、深度学习1Calendars的使用。 ...
    董苏萱阅读 2,498评论 0 1
  • 我是黑夜里大雨纷飞的人啊 1 “又到一年六月,有人笑有人哭,有人欢乐有人忧愁,有人惊喜有人失落,有的觉得收获满满有...
    陌忘宇阅读 12,717评论 28 53