zoukankan      html  css  js  c++  java
  • 字符串String 2

    思维导图透视

    判断字符串的开始与结尾

    String类的startsWith()与endsWith()方法分别用于判断字符串是否以指定的内容开始和结尾,它们的返回值都为boolean类型。

    (1)startsWith()方法

    该方法用于判断当前字符串对象是否以参数指定的字符串开始。

    str.startsWith(String prefix)

    prefix:指作为前缀的字符。

    返回值:返回boolean类型。

    //判断字符串开始
            
            System.out.println("是否以“字符串1”字开头="+str1.startsWith("字符串1"));
            
            System.out.println("是否以“字符串”字开头="+(str.indexOf("字符串")==0));

    (2)endsWith()方法

    该方法用于判断当前字符串对象是否以参数指定的字符串结尾。

    str.endsWith(String suffix)

    suffix:指作为后缀的字符串。

    返回值:返回boolean类型。

    //判断字符串结束
            
            str="字符串常量字符串常量";
            
            System.out.println("是否以“常量”结束="+(str.endsWith("常量")));
            
            //查找法
            System.out.println("是否以“常量”结束="+(str.lastIndexOf("常量")==(str.length()-2)));

    截取的方法

    截取字符串
    只传递开始位置索引
    从开始到结束,包含开始索引位置的字符

    //截取的方法
            
            //截取字符串
            //只传递开始位置索引
            //从开始到结束,包含开始索引位置的字符
            System.out.println("截取1="+str.substring(1));

     

    传递开始和结束位置索引
    不包含结束位置的字符
    截取字符的个数=结束位置索引-开始位置索引
    结束位置索引>=开始位置索引
    结束位置索引<=字符串长度

        //传递开始和结束位置索引
            //不包含结束位置的字符
            //截取字符的个数=结束位置索引-开始位置索引
            //结束位置索引>=开始位置索引
            //结束位置索引<=字符串长度
            System.out.println("截取3,5="+str.substring(3, 5));
            
            System.out.println("截取3,5="+str.substring(3, 10));

    去除字符串中的空格

    去掉字符串中的空格有两种,一种是去除字符串的前导、尾部空格,二是去除字符串中的多有空格,可以用不同的方法来实现。

    1.去除字符串的前导、尾部空格

    trim()方法用于去除字符串的前导、尾部空格。

    str.trim()

    str:任意的字符串对象。

    返回值:去除前导和尾部空格后的字符串。

    //去前后空格
            str1="  张  三   ";
            
            System.out.println("去前后空格="+str1.trim());

    结果显示此方法去除了字符串前导空格和尾部空格,而中间的一个空格并没有去除。

    2.去除字符串中的所有空格

    去除字符串中多有空格可以用replace方法来实现。

     该方法是将空格" "用""替换,以达到去除字符串中空格的目的。

    str1="  张  三   ";
    System.out.println("去空格="+str1.replace(" ", ""));

    字符串替换

    字符串替换就是新字符串替换掉原字符串中指定位置的字符串,生成一个新的字符串,通过replace()和replaceFirst()等方法可以实现。

    1.replace()方法

    该方法用于替换所有与指定字符串相匹配的字符串。

    str.replace(String regex,String replacement)

    regex:str中想要被替换的字符串。

    replacement:新字符串,用来替换每个regex。

    返回值:返回替换后的字符串。

    //查找替换
            
            str="字符串常量字符串常量";
            
            System.out.println("查找替换="+str.replace("常量", "变量"));
            
            System.out.println("str="+str);

    2.replaceFirst()

    该方法用于替换第一个出现的指定字符串,而后面出现的指定字符串则不会被替换。

    str.replaceFirst(String regex,String replacement)

    regex:str中想要被替换的字符串。

    replacement:新字符串,用来替换第一个regex。

    返回值:返回替换后的字符串。

    //值替换第一个
                    str="字符串常量字符串常量";
            System.out.println("查找替换="+str.replaceFirst("常量", "变量"));
            
            //replaceFirst(正则表达式,"替换的内容")
            
            str.replaceAll("正则表达式", "");        

    注意:要替换的字符regex的大小写有严格的要求,需要和原字符串保持一致,否则将不能成功替换。

    字母大小写转换

    String类提供了字母大小写转换的方法,即toLowerCase()和toUpperCase()方法。

    1.toLowerCase()方法

    该方法将字符串中的大写字母转换为小写字母,如果原来就是小写字母,则不改变,最后返回一个新的字符串,字符长度与原字符长度相同。

    str.toLowerCase()

    str:要进行转换的字符串。

    返回值:全换成小写后的字符串。

    2.toUpperCase()方法

    该方法将字符串中的小写字母转换为大写字母,如果原来就是大写字母,则不改变,最后返回一个新的字符串,字符长度与元字符长度相同。

    str.toUpperCase()

    str:要进行转换的字符串。

    返回值:全换成大写厚的字符串。

    //大小写转换,只对英文字母有效果
            str1="abcdeGGhhUBHH";
            
            System.out.println("转成大写:"+str1.toUpperCase());
            
            System.out.println("转成小写:"+str1.toLowerCase());

    说明: 使用toLowerCase()和toUpperCase()方法进行大小写转换时,数字或非字符不受影响,只对英文字母有效果。

    字符串分割

    split()方法根据指定的分隔符对字符串进行分割,并将分割后的结果存放在字符串数组中。split()方法提供了两种重在形式。

     1.split(String sign)方法

    该方法根据指定的分隔符对字符串进行完全分割。

    str.split(String sign)

    sign:分割字符串的分隔符,也可以使用正则表达式。

    返回值:根据分隔符分割后的字符串。

    //字符串分隔
            str2="姓名~21~男~地址~123456";
            
            String[]a=str2.split("~");
            
            int i=1;
            
            for(String t:a)
            {
                System.out.print(i+": "+t);
                
                i++;
            }

  • 相关阅读:
    HDU5418.Victor and World(状压DP)
    POJ2686 Traveling by Stagecoach(状压DP)
    POJ3254Corn Fields(状压DP)
    HDU5407.CRB and Candies(数论)
    CodeForces 352D. Jeff and Furik
    CodeForces 352C. Jeff and Rounding(贪心)
    LightOj 1282 Leading and Trailing
    Ural 1057. Amount of Degrees(数位DP)
    HDU 2089 不要62 (数位DP)
    HDU5366 The mook jong (DP)
  • 原文地址:https://www.cnblogs.com/cycanfly/p/5231397.html
Copyright © 2011-2022 走看看