public int length() : 返回字符串的长度
public char charAt(int index) : 根据下标获取字符
public boolean contains(String str) : 判断当前字符串中是否包含str。
// 字符串方法的使用 // length(); 返回字符串的长度 // charAt(int index);返回某个位置的字符 // contains(String str);判断是否包含某个子字符串 String content="java是世界上最好的编程语言"; System.out.println(content.length()); System.out.println(content.charAt(content.length()-1)); System.out.println(content.contains("java")); System.out.println(content.contains("php"));
public char[] toCharArray() : 将字符串转换成数组
public int indexOf(String str) : 查找str首次出现的下标,存在,则返回改下标;不存在,则返回 -1.
public int lastIndexOf(String str) : 查找字符串在当前字符串中最后一次出现的下标索引
// toCharArray(); 返回字符串对应的数组 // indexOf(); 返回字符串首次出现的位置 // lastIndexOf(); 返回字符串最后一次出现的位置 System.out.println(Arrays.toString(content.toCharArray())); System.out.println(content.indexOf("java",5)); System.out.println(content.lastIndexOf("java"));
public String trim():去掉字符串前后的空格
public String toUpperCase():将小写转成大写
public boolean endWith(String str):判断字符串是否以str结尾
// trim();去掉字符串前后的空格 // toUpperCase(); 把小写转成大写 tolowerCase();把大写转成小写 // endWith();判断是否已str结尾,starWith(str); 判断是否已str开头 String content2 = " WWWhelloworld "; System.out.println(content2.trim()); System.out.println(content2.toUpperCase()); System.out.println(content2.toLowerCase()); String filename = "hello.java"; System.out.println(filename.endsWith(".java")); System.out.println(filename.startsWith("hello"));
public String replace(char oldChar,char newChar);将旧字符串替换成新字符串
public String[] split(String str):根据str做拆分
// replace(char old, char new); 用新的字符或字符串替换旧的字符或字符串 // split();对字符串进行拆分 System.out.println(content.replace("java", "php")); String say = "java is the best programing language,java xiang"; String[] arr=say.split("[ ,]"); System.out.println(arr.length); for (String string : arr){ System.out.println(string); } System.out.println("------------------------------------------------"); // 补充两个方法 equals 、 compareTo(); 比较大小 String s1 = "hello"; String s2 = "HELLO"; System.out.println(s1.equalsIgnoreCase(s2)); String s3 = "abc"; String s4 = "xyz"; System.out.println(s3.compareTo(s4)); String s5 = "abc"; String s6 = "abcxyz"; System.out.println(s5.compareTo(s6)); }
需求:
已知String str = “this is a text”;
1.将str中的单词单独获取出来
2.将str中的text替换为practice
3.在text前面插入一个easy
4.将每个单词的首字母改为大写
public class Demo04 { public static void main(String[] args) { String str = "this is a text"; // 1.将str中的单词单独获取出来 String[] arr = str.split(" "); for (String b :arr){ System.out.println(b); } // - 2.将str中的text替换为practice String str2 = str.replace("text", "practice"); System.out.println(str2); // 3.在text前面插入一个easy String str3 = str.replace("text", "east text"); System.out.println(str3); // 4.将每个单词的首字母改为大写 for (int i=0;i<arr.length;i++){ char first = arr[i].charAt(0); char upperfirst = Character.toUpperCase(first); String news = upperfirst+arr[i].substring(1); System.out.println(news); } } }
StringBuffer :可变长字符串,JDK1.0提供,运行效率慢、线程安全
StringBuilder:可变长字符串,JDK5.0 提供,运行效率快、线程不安全
package com.kind.chapter_5; /* StringBuffer 和 StringBuilder的使用 区别: 1.效率比String高 2.比String节省内存 */ public class Demo05 { public static void main(String[] args) { // StringBuffer sb = new StringBuffer(); StringBuilder sb = new StringBuilder(); // 1.append();追加 sb.append("java世界第一"); System.out.println(sb.toString()); sb.append("java真香"); System.out.println(sb.toString()); sb.append("java不错"); System.out.println(sb.toString()); // 2.insert();添加 sb.insert(0,"我在最前面"); System.out.println(sb.toString()); // 3.replace();替换 sb.replace(0,5,"hello"); System.out.println(sb.toString()); // 4.delete();删除 sb.delete(0,5); System.out.println(sb.toString()); } }
package com.kind.chapter_5; /* 验证StringBuilder效率高于String */ public class Demo06 { public static void main(String[] args) { // 开始时间 long start = System.currentTimeMillis(); // String string = ""; // for (int i=0;i<99999;i++){ // string+=i; // } // System.out.println(string); StringBuilder sb = new StringBuilder(); for (int i=0;i<99999;i++){ sb.append(i); } System.out.println(sb.toString()); long end = System.currentTimeMillis(); System.out.println("用时:"+(end-start)); } }