黑马程序员技术交流社区

标题: 今天复习,对String类API中一些方法总结 [打印本页]

作者: joerk    时间: 2015-7-19 13:27
标题: 今天复习,对String类API中一些方法总结
  1. package com.xzh.day_12;

  2. import java.util.Arrays;

  3. public class StringTest {
  4.         public static void main(String[] args) {
  5.         System.out.println("************** 0、构造方法 测试  ***************");
  6.         /*
  7.                  构造方法:
  8.                 A:String s = new String();//创建一个内容为空的字符串对象;
  9.                 B:String s = new String(byte[] bys);//将一个字节数组转为一个字符串;
  10.                 C:String s = new String(byte[] bys,int index,int length);//把一个字节数组从索引为index的位置,截取后面的length个字节元素(包括index位置的元素)。
  11.                 D:String s = new String(char[] chs);//将一个字符数组转为一个字符串;
  12.                 E:String s = new String(char[] chs,int index,int length);//把一个字符数组从索引为index的位置,截取后面的length个字符元素(包括index位置的元素)。
  13.                 F:String s = new String(String str);//初始化一个创建的String对象。
  14.                 G:String s = "hello";//直接给一个字符串引用赋值。
  15.         */
  16.                 byte[] bys = {97,98,99,100,101,102,103};
  17.                 char[] chs = {'A','B','C','D','E','F','G'};
  18.                
  19.                 String s = new String();
  20.                 String s1 = new String( bys);//abcdefg
  21.                 String s2= new String( bys,2,4);//cdef
  22.                 String s3 = new String(chs);//ABCDEFG
  23.                 String s4 = new String( chs,2,4);//CDEF
  24.                 String s5 = new String("HelloWorld");//HelloWorld
  25.                 String s6 = "helloworld";
  26.                
  27.                 System.out.println("字符串s:" + s);
  28.                 System.out.println("字符串s1:" + s1);
  29.                 System.out.println("字符串s2:" + s2);
  30.                 System.out.println("字符串s3:" + s3);
  31.                 System.out.println("字符串s4:" + s4);
  32.                 System.out.println("字符串s5:" + s5);
  33.                 System.out.println("字符串s6:" + s6);
  34.                 System.out.println();
  35.                 System.out.println();
  36.                
  37.                 System.out.println("************** 1、 判断功能 测试  ***************");
  38.                
  39.                 /*
  40.                         A:判断功能
  41.                         boolean equals(Object obj)//判断两个字符串的内容是否相等,区分大小写;
  42.                         boolean equalsIgnoreCase(String str)//判断两个字符串的内容是否相等,忽略大小写。
  43.                         boolean contains(String str)//判断本字符串是否包含传入的str字符串。
  44.                         boolean startsWith(String str)//判断本字符串是否是以传入的str字符串开始的。
  45.                         boolean endsWith(String str)//判断本字符串是否是以传入的str字符串结束的。
  46.                         boolean isEmpty()//判断本字符串是否为空。
  47.                 */
  48.                
  49.                 String s7 = "HelloWorld";
  50.                 System.out.println("判断字符串s7:" + s7 + ", 与s5:" + s5 +",是否相等(区分大小写):" + s7.equals(s5));//true
  51.                 System.out.println("判断字符串s7:" + s7 + ", 与s6:" + s6 +",是否相等(区分大小写):" + s7.equals(s6));//false
  52.                 System.out.println("判断字符串s7:" + s7 + ", 与s6:" + s6 +",是否相等(忽略大小写):" + s7.equalsIgnoreCase(s6));//true
  53.                 System.out.println("-------------------");
  54.                
  55.                 String s8 = "Hello";
  56.                 System.out.println("判断字符串s7:" + s7 + ", 是否包含字符串s8:"+ s8 + "; 结果为= "+ s7.contains(s8));//true
  57.                 System.out.println("判断字符串s6:" + s6 + ", 是否包含字符串s8:"+ s8 + "; 结果为= "+ s6.contains(s8));//false ,说明这个是区分大小写的。
  58.                 System.out.println("-------------------");
  59.                
  60.                 String s9 = "World";
  61.                 System.out.println("判断字符串s7:" + s7 +"是以字符串s8:" + s8 + ", 开始的吗?结果 = "+ s7.startsWith(s8));//true
  62.                 System.out.println("判断字符串s7:" + s7 +"是以字符串s9:" + s9 + ", 开始的吗?结果 = "+ s7.startsWith(s9));//false
  63.                 System.out.println("判断字符串s7:" + s7 +"是以字符串s9:" + s9 + ", 结尾的吗?结果 = "+ s7.endsWith(s9));//true
  64.                 System.out.println("判断字符串s7:" + s7 +"是以字符串s8:" + s8 + ", 结尾的吗?结果 = "+ s7.endsWith(s8));//false
  65.                 System.out.println("---------------------");
  66.                
  67.                 System.out.println("判断字符串s:" + s + "是否为空 = " + s.isEmpty());//true
  68.                 System.out.println("判断字符串s9:" + s9 + "是否为空 = " + s9.isEmpty());//false
  69.                 System.out.println();
  70.                 System.out.println();
  71.                
  72.                
  73.                 System.out.println("************** 2、获取功能 测试  ***************");
  74.                 /*
  75.                         B:获取功能
  76.                         int length()//获取本字符串的长度。
  77.                         char charAt(int index)//获取本字符串中索引为index位置的字符。
  78.                         int indexOf(int ch)//返回指定字符ch在本字符串中第一次出现的索引位置。
  79.                         int indexOf(String str)//返回子串str在本字符串中第一次出现的索引位置。
  80.                         int indexOf(int ch,int fromIndex)//返回指定字符ch,从指定位置fromIndex起(包含此位置),之后第一次出现的位置索引。
  81.                         int indexOf(String str,int fromIndex)//返回指定字符串str,从指定位置fromIndex起(包含此位置),之后第一次出现的位置索引。
  82.                         String substring(int start)//在本字符串中,从start索引位置起(包含start)截取一个子串。
  83.                         String substring(int start,int end)//在本字符串中,截取从start(包含start)索引位置到end(不包含end)索引位置的一个子串。
  84.                  */
  85.                 String str1 = "dfoaiogandngandngiaanan";
  86.                 System.out.println("s1串:" + s1 +",长度 = "+s1.length());//7
  87.                 System.out.println("s3串:" + s3 + ",中索引为3的字符 = " + s3.charAt(3));
  88.                 System.out.println("s3中F的位置 = "+s3.indexOf('F'));
  89.                 System.out.println("符串str1 = " + str1);
  90.                 System.out.println("子串an 在str1中第一次出现的索引位置 = " + str1.indexOf("an"));
  91.                 System.out.println("字符g 从指定位置10开始,在str1中第一次出现的索引位置 = " + str1.indexOf('g',10));
  92.                 System.out.println("子串an 从指定位置10开始,在str1中第一次出现的索引位置 = " + str1.indexOf("an",10));
  93.                 System.out.println("在str1中,从索引位置10截取子串 = " + str1.substring(10));
  94.                 System.out.println("在str1中,截取索引位置10 到 15 的子串 = " + str1.substring(10 ,15));
  95.                 System.out.println();
  96.                 System.out.println();
  97.                
  98.                
  99.                 System.out.println("************** 3、转换功能 测试  ***************");
  100.                 /*
  101.                         C:转换功能
  102.                         byte[] getBytes()//把本字符串转换成一个字节数组。
  103.                         char[] toCharArray()//把本字符串转换成一个字符数组。
  104.                         static String copyValueOf(char[] chs)//把一个字符数组转换成一个字符串。
  105.                         static String valueOf(char[] chs)//把一个字符数组转换成一个字符串。
  106.                         static String valueOf(int i)//将一个int型数转换成字符串。
  107.                         String toLowerCase()//将本字符串中的所有大写字符转换为小写形式。
  108.                         String toUpperCase()//将本字符串中的所有小写字符转为大写。
  109.                         String concat(String str)//将str字符串,连接到本字符串后。
  110.                 */
  111.                
  112.                 byte[] b = s6.getBytes();
  113.                 System.out.println("字符串s6:"+s6+"; 转换后的字节数组 = " + Arrays.toString(b));
  114.                 char[] ch = s6.toCharArray();
  115.                 System.out.println("字符串s6:"+s6+"; 转换后的字符数组 = " + Arrays.toString(ch));
  116.                 System.out.println("字符数组chs:" + Arrays.toString(chs) +"; 通过copyValueOf()转换的字符串 = " + String.copyValueOf(chs));
  117.                 System.out.println("字符数组chs:" + Arrays.toString(chs) +"; 通过valueOf()转换的字符串 = " + String.valueOf(chs));
  118.                 int i = 520;
  119.                 System.out.println("将整数 i=" + i + "; 通过valueOf()转换的字符串 = " + String.valueOf(i));
  120.                 String str2 = "What Has Been Done Is Done";
  121.                 System.out.println("字符串str2:" + str2 + "; 通过toLowerCase()转小写后的字符串 = " + str2.toLowerCase());
  122.                 System.out.println("字符串str2:" + str2 + "; 通过toUpperCase()转大写后的字符串 = " + str2.toUpperCase());
  123.                 System.out.println("把字符串str2:" + str2 + "; 通过concat()连接到字符串s6:" + s6 + "的后面,得到的字符串为:" + s6.concat(str2));
  124.                 System.out.println();
  125.                 System.out.println();
  126.                
  127.                 System.out.println("************** 4、其他功能 测试  ***************");
  128.                 /*       
  129.                         a:替换功能
  130.                         String replace(char oldChar,char newChar)//用新的字符newChar,替换本字符串中的所有oldChar字符。
  131.                         String replace(String oldString,String newString)//用新的字符串newString,替换本字符串中的所有oldString字符串。
  132.        
  133.                         b:切割功能
  134.                         String[] split(String regex)//将本字符串中的regex字符串切去,返回一个字符串数组。
  135.                
  136.                         c:去除两端空格功能
  137.                         String trim()
  138.                
  139.                         d:字典顺序比较功能
  140.                         int compareTo(String str)//区分大小写条件下,将本字符串与str字符串进行比较。
  141.                         int compareToIgnoreCase(String str)//忽略大小写,将本字符串与str字符串进行比较。
  142.                 */
  143.                
  144.                 System.out.println("把字符串str2:" + str2 + ", 中的字符 s 用字符 v 替换后,得到的新字符串为:" + str2.replace('s', 'v'));
  145.                 System.out.println("把字符串str2:" + str2 +", 中的 Done 用 Loved 替换后,得到的新字符串为:" + str2.replace("Done", "Loved"));
  146.                 String[] ss = str2.split(" ");
  147.                 System.out.println("把字符串str2:" + str2 +", 以空格切割后,得到的新字符串数组 = " + Arrays.toString(ss) );
  148.                 String s11 = "   my love    ";
  149.                 System.out.println("把字符串s11:" + s11 +", 两端的空格去掉后,得到的新字符串为:" + s11.trim()+"****");
  150.                 System.out.println("将字符串s5:" + s5 + ", 与字符串s6:" + s6+", 比较大小(区分大小写),得到的结果 =" + s5.compareTo(s6));
  151.                 System.out.println("将字符串s5:" + s5 + ", 与字符串s6:" + s6+", 比较大小(忽略大小写),得到的结果 =" + s5.compareToIgnoreCase(s6));
  152.         }
  153. }
复制代码

作者: 差不多冬至    时间: 2015-7-19 13:31
打了这么多,学习了 。加油
作者: joerk    时间: 2015-7-19 13:39
差不多冬至 发表于 2015-7-19 13:31
打了这么多,学习了 。加油

homework{:3_60:}
作者: Matrix_heima    时间: 2015-7-19 14:14
学习了:lol
作者: 安卓新手    时间: 2015-7-19 14:37
学习了:D




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2