A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© TTc 中级黑马   /  2014-4-13 18:09  /  861 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 TTc 于 2014-4-13 18:32 编辑

  1. class Geindex{
  2.         int index =0;
  3.         int end = 0;
  4.         int z= 0;
  5.         int cont= 0;
  6.         Geindex(){};

  7.         
  8.         public static void sop(Object object){
  9.                
  10.                 System.out.println(object);
  11.                
  12.         }
  13.         public static void mysort(String st1,String st2){
  14.                
  15.                 for(int x=0;x<st2.length();x++){
  16.                         
  17.                         for(int y=0,z=st2.<font color="#ff0000">length()-x-1</font>;z<st2.length();y++,z++){            // 在我的理解中,数组的长度比数组大1,所以我想在给定获取子串的字符串的                                                                                                      //长度一定要比length()小1,
  18.                                 String tmp =st2.substring(y,z);                                               
  19.                                 sop(tmp+tmp.length());                                                      
复制代码
  1.                         }
  2.                        
  3.                 }
  4.                 System.out.println("华丽的分割线---");
  5.         }


  6.        
  7.        
  8.        
  9. }
  10. public  class GetequString {

  11.         /**
  12.          * @param args
  13.          */
  14.         public static void main(String[] args) {
  15.                 // TODO Auto-generated method stub

  16.                     Geindex gi  =new Geindex();
  17.                  // gi.mysort("nihaowoxiangsinile","dsxiangffd");
  18.                   
  19.                    String ne = "abc";
  20.                    gi.sop(ne.substring(0,3));
  21.                    gi.sop(ne.substring(0,1));
  22.                                      
  23.                   
  24.         }

  25. }
复制代码
      第一次调用时我将z的值设为字符串的长度时获得了正确的结果,但是因为数组的长度比角标大一,于是我将z的值赋予了长度减1,但是发现得到的结果出现了 问题。于是当我查看文档发现当结束索引字符串的长度大于字符串长度时会得到抛出异常,原来结束索引是可以等于字符串长度的,于是我就用了一个简单的字符串直接赋值开始索引和结束索引看结果,我发现当结束索引的值为长度时输出的结果确实是完整的字符串,那开始索引为0,结束索引为1时取到子串是a吗?结果确实是a,那这里的开始索引‘0’这个位置从哪跑出来的,字符串中的a不是‘0’的位置吗?
  

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

1 个回复

倒序浏览
substring截取的子字符串 含头不含尾。子字符串的长度为 endIndex-beginIndex。
例如:“abc".substring(0,1);  截取后得到字符串“a”,其索引是0,长度为1-0

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马