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]); } } }