欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

String相关的常用方法

程序员文章站 2022-03-21 11:32:13
关于String的当中的获取用法...

String当中与获取相关的常用方法

String当中与获取相关的常用方法有:
public int length():获取字符串中有多少字符个数,拿到字符串长度。
public String concat (String str):将当前字符串和参数字符串拼接成为返回值新的字符串。
public char charAt(int index);获取指定索引位置的单个字符(索引从0开始)
public int indexOf(String str):查找参数字符串再本字符串当中首次出现的索引位置,如果没有返回-1

public class demo02String {
    public static void main(String[] args) {
        int length="asdfghjkl".length();
        System.out.println("length字符串长度是"+length);

        String stu1="hello";
        String stu2="world";
        String stu3=stu1.concat(stu2);
        System.out.println(stu1);
        System.out.println(stu2);
        System.out.println(stu3);

        String stu4="asdfghjkl";
        char cha=stu4.charAt(4);
        System.out.println("第四好字符是"+cha);
        System.out.println("=============");
        int index=stu1.indexOf("llo");
        System.out.println("llo的索引位置是在"+index);
        int index2=stu1.indexOf("qq");//如果字符串中没有显示为-1
        System.out.println("qq索引的位置是在"+index2);
    }
}

字符串的截取方法:
public String subString (int index);截取从参数位置到字符串末尾返回新的字符串。
public String substring(int begin,int end):截取从begin开始一直到end结束中间的字符串。
备注:[begin,end),包括左边不包括右边。

public class demo02subString {
    public static void main(String[] args) {
        String str1="helloworld";
        String str2=str1.substring(5);
        System.out.println(str2);
        System.out.println("============");
        String str3=str1.substring(4,7);
        System.out.println(str3);
        System.out.println("===========");
        //下面这种写法字符串没有改变改变的是地址
        String str4="hello";
        System.out.println("str4");
        str4="world";
        System.out.println(str4);
    }
}

String当中与转换相关的常用方法有
publiv char[] toCharArray():将当前字符串拆分成为字符数组作为返回值。
public byte[] getByte():获得当前字符串底层的字节数组。
publicString replance(CharSequence oldString,CharSquence newString):
将所有出现的老字符串替换成新的字符串,返回替换之后的结果为新字符串。
备注:CharSequence意思事说可以接受字符串类型

```java````
public class demo04Stringconvert {
public static void main(String[] args) {
String str = “hello”;
char[] cha = str.toCharArray();//将字符串转化成数组
System.out.println(cha[3]);
System.out.println(cha.length);//数组长度不需要length后面不需要加[]

    System.out.println("===========");
    byte[] by = str.getBytes();//将字符串转化成字节数组
    for (int i = 0; i < by.length; i++) {
        System.out.println(by[i]);
    }
    System.out.println("===============");
    String stu1="how do you do";
    String stu2=stu1.replace("o","*");//将字符串内容替换
    System.out.println(stu2);
    System.out.println("=================");

    String stu3="会不会玩呀,你大爷的!!!!你大爷的!!你大爷的!";
    String stu4=stu3.replace("你大爷的","****");
    System.out.println(stu4);

}

}

``
分割字符串的方法:
publicString[] split(String regex);按照参数的规则,将字符串切分成为若干份。
注意事项:split方法的参数其实是一个”正则表达式“
如果要按照英文句点”.“进行切分必须写\.(两个反斜杠)

public class demo05StringSplit {
    public static void main(String[] args) {
        String stu="aaa,bbb,ccc";
        String[] stu1=stu.split(",");//规则不一定用逗号,还可以用其他比如空格等
        for (int i = 0; i < stu1.length; i++) {
            System.out.println(stu1[i]);

        }
        System.out.println("==========");
        String stu2="aaa bbb ccc";
        String[] stu3=stu2.split(" ");
        for (int i = 0; i < stu3.length; i++) {
            System.out.println(stu3[i]);

        }
        String stu5="XXX.YYYY.ZZZZ";//英文句点切不出来
        System.out.println(stu5.length());//得出长度为0,想要切成功必须写\\.才行
        String[] stu6=stu5.split(".");
        for (int i = 0; i < stu6.length; i++) {
            System.out.println(stu6[i]);
        }
    }
}

练习题目:
定义一个方法吧数组{1,2,3}按照指定格式拼接成一个字符串,参照格式如下[word1#word2#word3]
分析:1.首先准备一个int[]数组,内容是1,2,3
2.定义一个方法,用来将数组变成字符串
三要素
返回值类型:String
方法名称fromArrayToString
参数,列表:int[]
3.格式:[word1#word2#word3]
用到:for循环,字符串拼接,每个数组元素之间都有word字样,分隔使用的是#,区分是不是最后一个
4.调用方法,得到返回值,并且打印结果

public class emo06StringPractice {
    public static void main(String[] args) {
        int[] array={1,2,3};
        String reslut=formArrayToString(array);
        System.out.println(reslut);
    }
    public static String formArrayToString(int[] array){
        String str="[";
        for (int i = 0; i < array.length; i++) {
            if(i==array.length-1){
                str+="word"+array[i]+"]";
            }else{
                str+="word"+array[i]+"#";
            }
        }
        return str;

    }

}

题目:键盘输入一个字符串并且统计其中各种字符出现的次数。
种类有:大写字母,小写字母,数字,其他
思路:1.既然用到键盘输入那么我们肯定用Scanner
2.键盘输入的字符串,那么肯定用String str=sc.next();接收
3.定义四个变量,分别代表四种字符各自的出现次数。
4.需要对字符串一个字一个字的检查,String–》char[],方法就是toCharArray()
5.遍历char[]字符数组,对当前字符的种类进行判断,并且用四个变量进行++动作。
6.打印输出四个变量,分别代表四种字符出现的次数。

import java.util.Scanner;

public class demo07Stringpractice {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String str=sc.next();
        System.out.println("请输入字符串");

        char[] Array=str.toCharArray();
        int conutUpper=0;
        int conutLower=0;
        int conutNumber=0;
        int conutOther=0;
        char[] ch=str.toCharArray();
        for(int i=0;i <ch.length;i++){
            char ch1=ch[i];
            if ('a'<=ch1&&ch1<'z'){
                conutLower++;
            }else if('A'<=ch1&&ch1<'Z'){
                conutUpper++;
            }else if('0'<=ch1&&ch1<='9'){
                conutNumber++;
            }else{
                conutOther++;
            }
        }
        System.out.println("大写字母有"+conutUpper+"个");
        System.out.println("小写字母有"+conutLower+"个");
        System.out.println("数字有"+conutNumber+"个");
        System.out.println("其他符号有" + conutOther + "个");
    }
}

静态代码块

静态代码块的格式是:
publicclass类名称{
static{
代码块的内容
}
}
特点:当第一次用到本类是,静态代码块执行唯一一次(唯一一次是当首次访问本类时开始执行,当第二次访问时不在执行)
构造方法只要创建对象时就会开始执行,但是静态内容总是优先于非静态,所以静态代码块比构造方法先执行。
静态代码块用途:一次性的对静态成员变量赋值

public class person {
    static{
        System.out.println("静态代码块执行");
    }
    public person() {
        System.out.println("构造方法执行");
    }
}
public class demo04static {
    public static void main(String[] args) {
        person one=new person();//静态代码块执行 构造方法执行
        System.out.println("=================");
        person two=new person();
        person three=new person();//静态代码块执行 构造方法执行 构造方法执行
    }
}

本文地址:https://blog.csdn.net/LZ804526270/article/details/112863046

相关标签: java