黑马程序员技术交流社区

标题: 切割,求助 [打印本页]

作者: 邝雄伟    时间: 2013-2-1 23:59
标题: 切割,求助
class  StringDemo
{

   public static void main(String[] args)
     {
   
           method_split();
     }
public static void sop(Object obj)
   {
      System.out.println(obj);
    }
  public static void method_split()
    {
         String s="zhangsan.sili.wangwu";
        String [] arr=s.split(".");
      for (int x=0;x<arr.length ;x++ )
        {
           sop(arr[x]);
        }
    }
}
这个小程序看着没什么问题,就是没有运行结果,请高手指正。
作者: 王溢君    时间: 2013-2-2 00:22
  1. class Test
  2. {
  3.        
  4.            public static void main(String[] args)
  5.                  {
  6.           
  7.                            method_split();
  8.                  }
  9.        
  10.           public static void method_split()
  11.                 {
  12.                          String s="zhangsan:sili:wangwu";
  13.                         String [] arr=s.split(":");
  14.                   for (int x=0;x<arr.length ;x++ )
  15.                         {
  16.                            System.out.println(arr[x]);
  17.                         }
  18.                 }

  19.                 public static void sop(Object obj)
  20.            {
  21.                   System.out.println(obj);
  22.                 }
  23. }
复制代码
无语,把.改成:可以执行。。。。。。。
作者: 谢波    时间: 2013-2-2 00:28
String [] arr=s.split(".");
改成
String [] arr=s.split("\\.");
就o了

作者: 王勇文    时间: 2013-2-2 00:32
  1. public class Test1
  2. {

  3. public static void main(String[] args)
  4. {

  5. method_split();
  6. }
  7. public static void sop(Object obj)
  8. {
  9. System.out.println(obj);
  10. }
  11. public static void method_split()
  12. {
  13. String s="zhangsan.sili.wangwu";
  14. String [] arr=s.split("\\."); // 把这里的分隔符换一下,加两个斜杠就可以输出了
  15. for (int x=0;x<arr.length ;x++ )
  16. {
  17. System.out.println(arr[x].toString());
  18. }
  19. }
  20. }
复制代码
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
经验分享:
1、分隔符为“.”(无输出),“|”(不能得到正确结果)转义字符时,“*”,“+”时出错抛出异常,都必须在前面加必须得加"\\",如split(\\|);
2、如果用"\"作为分隔,就得写成这样:String.split("\\\\"),因为在Java中是用"\\"来表示"\"的,字符串得写成这样:String Str="a\\b\\c";
?转义字符,必须得加"\\";
3、如果在一个字符串中有多个分隔符,可以用"|"作为连字符,比如:String str="Java string-split#test",可以用Str.split(" |-|#")把每个字符串分开;


作者: 王溢君    时间: 2013-2-2 01:02
王溢君 发表于 2013-2-2 00:22
无语,把.改成:可以执行。。。。。。。

split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
经验分享:
1、分隔符为“.”(无输出),“|”(不能得到正确结果)转义字符时,“*”,“+”时出错抛出异常,都必须在前面加必须得加"\\",如split(\\|);
2、如果用"\"作为分隔,就得写成这样:String.split("\\\\"),因为在Java中是用"\\"来表示"\"的,字符串得写成这样:String Str="a\\b\\c";
?转义字符,必须得加"\\";
3、如果在一个字符串中有多个分隔符,可以用"|"作为连字符,比如:String str="Java string-split#test",可以用Str.split(" |-|#")把每个字符串分开;
学习了,很强大!!!
作者: 曹睿翔    时间: 2013-2-6 00:50
王勇文 发表于 2013-2-2 00:32
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
经验分享:

真详细,受教了
作者: 杨芳    时间: 2013-2-6 01:49
顶!!!!!
作者: 朱玉玺    时间: 2013-2-7 23:13
.是特殊符号,需要转义
作者: 刘凯    时间: 2013-2-8 10:53
王勇文 发表于 2013-2-2 00:32
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
经验分享:

我怎么第三条实现不了?
作者: 刘凯    时间: 2013-2-8 10:59
王勇文 发表于 2013-2-2 00:32
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
经验分享:

试过了 第三条那个得改成Str.split("-|#")才能实现




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