Java中subString(A,B)函数的取值范围问题

package 截取字符串中的子字符串;

public class 截取字符串中的子字符串 {

public static void main(String[] args) {
// TODO Auto-generated method stub
String str1="Hello Java";
String a=str1.substring(0,3);
System.out.print(a);
}
}
函数的定义是从某一索引位置开始到某一索引位子结束;
如上 H(0) e(1) l(2)l(3) o(4) (5) J(6) a(7) v(8) a(9)
那么subString不就应该是Hell吗?
为什么结果是Hel呢?

你应该学会看API,在api中的改方法的解释,应该有说明,第二个参数值时不包括的,也就是说,索引为3的字符是不在截取范围内的
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-12-06
substring方法是左闭右开的,如substring(0,3) 取字符串为,0,1,2
相似回答