黑马程序员技术交流社区

标题: 字符串常用操作练习 [打印本页]

作者: fycrik    时间: 2013-7-11 09:26
标题: 字符串常用操作练习
  1. class  StringTest2
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 String s  = "  Hello Java  ";
  6.                 Sop.sop(s);

  7.                 //获取长度
  8.                 Sop.sop("1.长度为="+s.length());
  9.                 //指定位置的字符
  10.                 Sop.sop("2.角标为10的字符为"+s.charAt(s.length()-4));
  11.                 //指定字符的位置
  12.                 Sop.sop("3.l的位置在"+s.indexOf('l'));
  13.                 Sop.sop("3.第二个a的位置在"+s.indexOf('a',10));
  14.                 Sop.sop("3.a的位置在"+s.indexOf(97));
  15.                 Sop.sop("3.a的位置在"+s.indexOf(97,8));
  16.                 //判断是否包某字符串
  17.                 Sop.sop("是否存在World="+s.contains("World"));
  18.                 //判断是否为空
  19.                 Sop.sop("是否为空="+s.isEmpty());
  20.                 //判断是否以特定字符串为起始或结尾
  21.                 Sop.sop("是否以空字符开头="+s.startsWith(" "));
  22.                 Sop.sop("开头第三个字符是不是I="+s.startsWith("H",2));
  23.                 Sop.sop("是否以空字符结尾="+s.endsWith(" "));
  24.                 //判断是否相等
  25.                 Sop.sop("s与s1是否相等="+s.equals("  HELLO JAVA  "));
  26.                 Sop.sop("s与s1是否相等(忽略大小写)="+s.equalsIgnoreCase("  HELLO JAVA  "));

  27.                 char[] arr = {'H','e','l','l','o',' ','J','a','v','a'};
  28.                 //构造函数方法将字符数组转成字符串
  29.                 Sop.sop(new String(arr));
  30.                 Sop.sop(new String(arr,6,4));
  31.                 //静态方法将字符数组转成字符串
  32.                 Sop.sop("copyValueOf:"+String.copyValueOf(arr));
  33.                 Sop.sop("copyValueOf:"+String.copyValueOf(arr,0,5));
  34.                 Sop.sop("valueOf:"+String.valueOf(arr));
  35.                 Sop.sop("valueOf:"+String.valueOf(arr,0,5));
  36.                 //字符串转成字符数组
  37.                 char[] chs = s.toCharArray();
  38.                 for (int x =0;x<chs.length ;x++ )
  39.                 {
  40.                         Sop.sop("chs"+x+"="+chs[x]);
  41.                 }
  42.                 //基本类型转换成字符串
  43.                 String s1 = 3+"";
  44.                 String s2 = String.valueOf(3);
  45.                 Sop.sop("s1与s2是否相等="+s1.equals(s2));
  46.                 //替换
  47.                 String s3 = s.replace('a','n');
  48.                 String s4 = s.replace("Java","World");
  49.                 Sop.sop("s3="+s3);
  50.                 Sop.sop("s4="+s4);
  51.                 //切割
  52.                 String[] arr1 = s.split(" ");
  53.                 for (int x=0; x<arr1.length;x++ )
  54.                 {
  55.                         System.out.println("arr1-"+x+"="+arr1[x]);
  56.                 }
  57.                 //获取子串
  58.                 Sop.sop(s.substring(6));
  59.                 Sop.sop(s.substring(2,5));
  60.                 //大小写转换
  61.                 Sop.sop(s.toUpperCase());
  62.                 Sop.sop(s.toLowerCase());
  63.                 //去除空格
  64.                 Sop.sop(s.trim());
  65.                 //对两个字符串进行自然顺序的比较
  66.                 Sop.sop("s比s4大"+s.compareTo(s4));

  67.         }
  68. }
  69. class Sop
  70. {
  71.         public static void sop(String str)
  72.         {
  73.                 System.out.println(str);
  74.         }
  75. }
复制代码
有一点不是很明白: 用静态方法将字符数组转成字符串中的  copyValueOf和ValueOf 有什么区别呢?

作者: 许庭洲    时间: 2013-7-13 19:55
值得学习ing!




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