PDA

Click to See Complete Forum and Search --> : Why, why??


honeybee
Aug 6th, 2001, 03:28 AM
Why does the substring method of the String object behave so strangely?

It takes the starting number and the one next to the ending number for extracting the string. For e.g.


String MyString=new String("honeybee");


To extract "bee" from this, I have to use:


String YourString = MyString.substring(5, 8);


Why doesn't the substring behave like the MID/SubString functions in all other programming languages??

.

filburt1
Aug 6th, 2001, 06:28 AM
From the JDK documentation:

substring
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.


Personally, I like it better than the VB way.