关于String.substring方法_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 关于String.substring方法

关于String.substring方法

 2012/4/25 17:12:29  coding1688  程序员俱乐部  我要评论(0)
  • 摘要:关于String.substring方法该方法的签名为Stringsubstring(intbeginIndex,intendIndex)结合javadoc和源代码,对该方法进行分析:根据beginIndex与0或count的比较、beginIndex与endIndex的比较、endIndex与字符串长度count的比较,有几种情况:#beginIndex与0比较beginIndex与endIndex比较endIndex与count比较结果1<
  • 标签:方法

关于String.substring方法

该方法的签名为

String substring(int beginIndex,?int endIndex)

?

结合javadoc和源代码,对该方法进行分析:

?

根据beginIndex与0或count的比较、beginIndex与endIndex的比较、endIndex与字符串长度count的比较,有几种情况:

?

?

?

# beginIndex与0比较 beginIndex与endIndex比较 endIndex与count比较 结果 1 <0 IndexOutOfBoundsException 2 =0 < < 子串 3 < = String对象本身 4 < > IndexOutOfBoundsException 5 = "" ?空串 6
> IndexOutOfBoundsException 7 >0 & <count < < 子串 8 < = 子串 9 < > IndexOutOfBoundsException 10 = "" 空串 11 > IndexOutOfBoundsException 12 =count < IndexOutOfBoundsException 13 = "" 空串 14 > IndexOutOfBoundsException 15 >count IndexOutOfBoundsException

?

上面的表格列出的情况多达15种,可见要对代码进行覆盖性测试确实是非常困难的。

?


jdk6中String.substring的文档 写道
public String substring(int?beginIndex)
Returns a new string that is a substring of this string. The substring begins with the character at the specified index and extends to the end of this string.

Examples:

 "unhappy".substring(2) returns "happy"
 "Harbison".substring(3) returns "bison"
 "emptiness".substring(9) returns "" (an empty string)
 

?

Parameters:
beginIndex - the beginning index, inclusive.
Returns:
the specified substring.
Throws:
IndexOutOfBoundsException - if beginIndex is negative or larger than the length of this String object.


?

public String substring(int?beginIndex,
                        int?endIndex)
Returns a new string that is a substring of this string. The substring begins at the specified beginIndex and extends to the character at index endIndex - 1. Thus the length of the substring is endIndex-beginIndex.

Examples:

 "hamburger".substring(4, 8) returns "urge"
 "smiles".substring(1, 5) returns "mile"
 

?

Parameters:
beginIndex - the beginning index, inclusive.
endIndex - the ending index, exclusive.
Returns:
the specified substring.
Throws:
IndexOutOfBoundsException - if the beginIndex is negative, or endIndex is larger than the length of this String object, or beginIndex is larger than endIndex.
?

PS:iteye的表格编辑实在很困难,望高人指点。

?

发表评论
用户名: 匿名