package com.xxx.xxx; import java.util.Date; public class demo5 { /** * 字符串连接 * @param args */ public static void main(String[] args) { //字符串连接 int a = 33; float b = 44.5f; //将 字符串 与 整形 、浮点型 变量 连接 时,会自动调用 toString() 方法,将其转换为字符串 后 参与 连接 System.out.println("我每天花费"+a+"个小时看书,"+b+"个小时上机练习"); //获取 字符串 长度 str.length() String s1 = "hello"; int size = s1.length(); System.out.println("长度为:"+size); //字符串查找 从 0 开始 indexOf(String s); int a1 = s1.indexOf("o"); System.out.println("字符 o 首次出现的位置:"+a1); int a2 = s1.lastIndexOf("e"); System.out.println("字符 e 最后一次出现的位置:"+a2); //获取指定索引的字符 str.charAt(); String str = "Hello Word!"; char mychar = str.charAt(6); System.out.println("字符串 str 中索引位置为 6 的字符为:"+mychar); //1.1获取子字符串 substring(int brgIndex) String substr = str.substring(3); System.out.println("1.1获取子字符串:"+substr); //1.2获取子字符串 substring(int brgIndex,endIndex) String substrend = str.substring(0, 3); System.out.println("1.2获取子字符串:"+substrend); //去除空格 str.trim() 忽 前导空格 和 尾部空格 String str1 = " good bye ! "; String strTrim = str1.trim(); System.out.println("源字符串长度:"+str1.length()+"---"+str1+" 去除空格后的长度:"+strTrim.length()+"----"+strTrim); // 字符串替换 str.replace(char oldChar,cahr newChar) 将 指定的字符串 转换成 新的字符串 String str2 = "adress"; String newString = str2.replace("a", "good"); System.out.println("源字符串:"+str2+" 新字符串:"+newString); //判断字符串的开始和结尾 返回值为 布尔 str.startsWith(String prefix) endWith(String suffix) String str3 = "abcdefg"; boolean bool1 = str3.startsWith("a"); boolean bool2 = str3.endsWith("g"); System.out.println(bool1+" "+bool2); //判断字符串是否相等 str.equals(String other) 区分大小写 str.equalsnoreCase(String other) String ss1 = new String("abc"); String ss2 = new String("ABc"); System.out.println("equals区分大小写 字符串比较1:"+ss1.equals("abc")); System.out.println("equals区分大小写 字符串比较2:"+ss1.equals(ss2)); System.out.println(" 不区分大小写字符串比较2:"+ss1.equalsIgnoreCase(ss2)); // 按字典顺序比较两个字符串 str.compareTo(String other) System.out.println(ss1.compareTo("def")); //字母大小写转换(数字和非字符不受影响) 转换小写s3.toLowerCase() 转换大写s3.toUpperCase() String s3 = "aBc"; System.out.println("原来的:"+s3+" 转换为小写"+s3.toLowerCase()); System.out.println("原来的:"+s3+" 转换为大写"+s3.toUpperCase()); //字符串分割 split(String sign) String s4 = new String("abc,deg,ghi,gki"); String s5arr[] = s4.split(","); //没设定分割次数 for(String aa1 : s5arr ){ System.out.println("【没有设定分割次数】分割前的:"+s4+" 分割后的字符串:"+aa1); } String s6arr[] = s4.split(",", 2); //设定次数为 2 次 for(String aa2 : s6arr){ System.out.println("【设定分割次数 2 次】分割前的:"+s4+" 分割后的字符串:"+aa2); } //格式化字符串 format() %te %tH %tl 百度常用的日期格式化转换符 Date date = new Date(); String time = String.format("%tc", date); String form = String.format("%tF", date); String s_date = String.format("%te", date); System.out.println("格式化后的字符串:"+s_date); System.out.println("全部的时间信息:"+time); System.out.println("年-月-日格式:"+form); // format() (另外还有 常规类型格式化 %b %d %e...) String a10 = String.format("%d", 400/2); //十进制 String a11 = String.format("%b", 400/2); //布尔类型 String a12 = String.format("%x", 400/2); //十六进制类型 System.out.println("400/2 十进制类型格式化:"+a10+" 布尔类型类型格式化:"+a11+" 十六进制类型格式化:"+a12); } }