Java中的String类提供了一个substring(int from, int to)方法用于截取字符串中位置为from到to-1位置的字符。
因为字符串的字符位置是从0开始的,而substring(int from, int to)方法是前闭后开的,即[from, to),可以理解为[from, to-1]。
同时to是可以省略的(多态),to缺省的情况下为截取到字符串的最后一位。
由此可以想到,java如何截取字符串后几位呢?
可以先获取字符串的长度,将字符串的长度-n作为substring()方法的第一参数,就能实现截取字符串最后的n个字符的效果。
1 2 |
String str = "i love 791202"; System.out.println(str.substring(str.length()-6)); // 791202 |
另外要注意的是,Java中的String是不可变的类型,因此substring()方法并不会改变原字符串,而是返回了一个新的字符串。
1 |
System.out.println(str); // i love 791202 |
0
同理,截取字符串最后一位就是length-1,我明白了