java基础知识1--String常用方法总结

主要涉及String常用的方法。

package collection;

import java.lang.reflect.Array;
import java.util.Arrays;

/**
 * Created by wyy on 2017/2/16.
 */
public class StringTest {
    public static void main(String[] args) {

//String的用法

        //输出第3个字符
        String str="WATERMELON";
        String st="lalaland";
        System.out.println(str.charAt(2));

        //将字符数组转化为字符串
        char[] ch={'a','b','c','d'};
        String c=new String(ch);//abcd
        String c1=new String(ch,2,1);// cd
        System.out.println(c1);


        //String的比较用compareTo方法,输出长度差,它从第一位开始比较,如果遇到不同的字符,则马上返回这两个字符的ascii值差值..返回值是int类型
        String  strr="WA";
        String  s="wa";
        int a=str.compareTo(strr);
        int b=str.compareToIgnoreCase(strr);//忽略大小写
        System.out.println(a);

        //是否以某个字符串开头,结尾
        System.out.println(str.startsWith("W"));
        System.out.println(str.endsWith("W"));

        //输出匹配的字母在字符串的位置
        int m=str.indexOf("T");
        System.out.println(m);
        System.out.println(str.indexOf(2,3)); // ????、

        //取子字符串
        System.out.println(str.substring(3));  //子字符串,从第4个字符往后,ERMELON
        System.out.println(str.substring(3,5));//子字符串,从第4个字符往后,到第6个,ER

        //改变大小写
        System.out.println(str.toLowerCase());//改成小写   watermelon
        System.out.println(st.toUpperCase());//改成大写  LALALAND

        //equals()方法比较字符串对象中的字符,==运算符比较两个对象是否引用同一实例
        String s1="Hello";
        String s2=new String(s1);
        s1.equals(s2); //true   ,如果用  == 判断则会报错
        System.out.println(strr.equalsIgnoreCase(s));//比较相等,忽略大小写   true

     /*   连接两个字符串,此处比较:
     StringBuffer.append(),Stringbuffer是可变的,创建一个StringBuffer对象后,连接后,对象的值也会变
     String的concat(),只能用于字符串,String是final修饰的类,是不可变的,每次必须新建一个对象接收concat,才会有变化
     而+可以用于任何类型的连接
*/
        StringBuffer sb1=new StringBuffer("love");
        sb1.append("rose");
        String h="I LIKE KE";
        h.concat("rose");
        System.out.println(sb1); //sb1的值直接变了,loverose
        System.out.println(h);//h.concat("rose")赋给新的String变量才能变,I LIKE
        System.out.println(h+"you");//I LIKEyou


        //替换字符串中的字符或字符串 replace()
        String h1=h.replace('I','A');//将所有的I替换成A
        String h2=h.replaceFirst("KE","OO");//将第一个的KE替换成OO
        String h3=h.replaceAll("KE","OO");//将所有的KE替换成OO
        System.out.println(h1);
        System.out.println(h2);
        System.out.println(h3);

        //trim(),去掉字符串前后的空格,如果替换全部,可以用replaceALL(" ","")
        String k="  lala da do ";
        String k1=k.trim();
        String k2=k.replace(" ","");
        System.out.println(k1);
        System.out.println(k2);

        //contains()是否包含某个字符串或字符
        System.out.println(k.contains("lala"));// true

        /*split(),返回的是个字符串数组,
        注意对于字符"|","*","+"都得加上转义字符,前面加上"\",
        而如果是"",那么就得写成"\\"。
        如果一个字符串中有多个分隔符,可以用"|"作为连字符。*/
        String l="wa.ni.huhu";
        String l2="wo%ai#chi";
        String[] l1=l.split("\.");
        for (String j:l1
             ) {
            System.out.println(j);
        }

        String[] l3=l2.split("%|#"); 
        for (String n:l3
                ) {
            System.out.println(n); //wo ai chi
        }

     /*将字符串转化为基本数据类型,用Int.parseInt(string)
       包括Byte、Short、Integer、Float、Double类   */

       String n3="12.34";
       float n1=Float.parseFloat(n3); //12.34
       double n2=Double.parseDouble(n3);//12.34
       System.out.println(n1);
       System.out.println(n2);


     /* 将基本的数据类型转化为String类型,用 String.valueOf()*/
        int p1=7;
        String p2=String .valueOf(p1)+"ww";
        System.out.println(p2);  //7ww
        
/*Stringbuilder,字符串构建器,用于构建连接短的字符串,避免每次连接字符串产生一个新的string对象*/
        StringBuilder sb=new StringBuilder();
        sb.append("wawa");//追加字符串或字符
        sb.append("hhhh");
        sb.append(str);
        sb.insert(2,"i");//在第三个位置插入i
        sb.delete(4,6);//waiwhhhWATERMELON  删除了第4,5个字符
        System.out.println(sb); //waiwahhhhWATERMELON
        sb.toString();//构建一个与构建器内容相同的字符串


//字符串数组
        /*1.定义数组必须要定义大小,而arraylist是动态的,可以不用定义大小*/

        String[] str1=new String[]{"b","c"};
        String[] str2=new String[2];
        str2[1]="dd";  //不能整体定义

//        输出整个字符串
        System.out.println(str1.toString()); //[Ljava.lang.String;@1540e19d
        System.out.println(Arrays.toString(str1)); //Arrays.toString()  把结果转化为字符串

//        foreach循环
        for (String n:str1
             ) {
            System.out.println(s);
        }
//        for循环

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

        }
    }


}
原文地址:https://www.cnblogs.com/alwayswyy/p/6411370.html