Java:字符串类String的功能介绍
在java中,字符串是一个比较常用的类,因为代码中基本上处理的很多数据都是字符串类型的,因此,掌握字符串类的具体用法显得很重要了。
它的主要功能有如下几种:获取、判断、转换、替换、切割、字串的获取、大小写转换、去除空格、比较等
下面的演示都在StringTest类中进行
class StringTest { public static void sop(Object obj) { System.out.println(obj); } public static void main(String[] args) { get_method(); is_method(); trans_method(); repalce_method(); split_method(); substring_method(); CaseTrimCompareTo_method(); } ...........................
执行的代码如下 ........................... }
1、字符串的获取功能
public static void get_method()//字符串的获取功能 { String str = "abcdeakpf"; //获取长度 sop(str.length()); //根据索引获取字符(可能会发生字符串角标越界异常) sop(str.charAt(4)); //(顺向索引)根据字符获取索引(如果所找的字符不存在,返回的值为-1) sop(str.indexOf('a')); //(顺向索引)根据索引获取字符串 sop(str.indexOf("kpf")); //(顺向索引)从指定位置,根据字符获取索引(如果所找的字符不存在,返回的值为-1) sop(str.indexOf('a',3)); //(顺向索引)从指定位置,根据字符串获取索引(如果所找的字符不存在,返回的值为-1) sop(str.indexOf("kpf",7)); //反向索引 sop(str.lastIndexOf('a')); }
2、字符串的判断功能
public static void is_method()//字符串的判断功能 { String str1 = "ArrayDemo.java"; String str2 = "Arraydemo.java"; //判断文件名是否以“Array”单词开头 sop(str1.startsWith("Array")); //判断文件名是否以“java”单词结尾 sop(str1.endsWith("java")); //判断文件名中是否包含“Demo” sop(str1.contains("Demo")); //判断文件名是否有内容 sop(str1.isEmpty()); //判断字符串内容是否相同,复写了Object类中的equals方法 sop(str1.equals(str2)); //判断字符串内容是否相同,并忽略大小写 sop(str1.equalsIgnoreCase(str2)); }
3、字符串的转换功能
public static void trans_method()//字符串的转换功能 { char[] ch = {'a','b','c','d','e','f'}; //将字符数组全部转换成字符串(方法一) String str3 = new String(ch); sop(str3); //将字符数组全部转换成字符串(方法二) sop(String.copyValueOf(ch)); //将字符数组全部转换成字符串(方法三) sop(String.valueOf(ch)); //将从指定位置指定长度的字符数组转换成字符串(方法一) String str4 = new String(ch,1,3); sop(str4); //将从指定位置指定长度的字符数组转换成字符串(方法二) sop(String.copyValueOf(ch,1,3)); //将从指定位置指定长度的字符数组转换成字符串(方法三)注意:static String vauleOf(基本数据类型和数组都可以) sop(String.valueOf(ch,1,3)); //例如:此静态方法可以直接将数字转换成字符串 sop(String.valueOf(10)); //将字符串转换成字符数组 String str5 = "xyz"; char[] chs = str5.toCharArray(); sop(chs); }
4、字符串的替换功能
public static void repalce_method()//字符串的替换功能 { String s1 = "hello java"; //字符替换,返回一个新字符串 //String s2 = s1.replace('a','n'); sop(s1.replace('a','n')); sop(s1.replace('q','n'));//(注意:如果要替换的字符不存在,那么返回的仍是原字符串) //字符串替换,返回一个新的字符串 sop(s1.replace("java","world")); }
5、字符串的切割
public static void split_method()//字符串的切割功能 { String s2 = "zhangsan,lisi,wangwu"; //将字符串中姓名以分号为分割符切割出来 String[] array = s2.split(","); for(int i=0; i<array.length; i++) { sop(array[i]); } }
public static void substring_method()//字符串子串的获取 { String s3 = "abcdef"; //从2号位置开始获取子串(如果角标不存在,会出现字符串角标越界异常) sop(s3.substring(2)); //从2号位置开始,到4号位置但不包含4号位置结尾,来获取子串 sop(s3.substring(2,4)); //获取整串子串 sop(s3.substring(0,s3.length())); }
7、字符串大小写转换、去除空格、字符串比较
public static void CaseTrimCompareTo_method()//大小写转换、去除空格、字符串比较 { String s4 = new String(" hello JAVA "); //将字符串全部转为为大写 sop(s4.toUpperCase()); //将字符串全部转为为小写 sop(s4.toLowerCase()); //去除字符串首尾的空格 sop(s4.trim()); //字符串的比较,也即所比为两个字符ASCLL的差值(小于返回负值、等于返回0、大于返回正值) String s5 = "abc"; String s6 = "aaa" ; sop(s5.compareTo(s6)); }
程序猿神奇的手,每时每刻,这双手都在改变着世界的交互方式!