JavaSE8基础 StringBuffer substring 将变量分割返回String,其本身不变
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaSE8基础 StringBuffer substring 将变量分割返回String,其本身不变相关的知识,希望对你有一定的参考价值。
os :windows7 x64
jdk:jdk-8u131-windows-x64
ide:Eclipse Oxygen Release (4.7.0)
code:
package jizuiku1; public class Demo110 { public static void main(String[] args) { StringBuffer sb = new StringBuffer(); sb.append("cnblog"); String str = sb.substring(3,5);//返回的是String [3,5) System.out.println(str);//截取部分 System.out.println(sb);//本身,为什么本身不变呢?看源码! } }
result:
sourceCode:
第一级
@Override public synchronized String substring(int start) { return substring(start, count); }
点击return后的 substring,进入第二级
@Override public synchronized String substring(int start, int end) { return super.substring(start, end); }
点击super.后面的 substring,进入第三级
public String substring(int start, int end) { if (start < 0) throw new StringIndexOutOfBoundsException(start); if (end > count) throw new StringIndexOutOfBoundsException(end); if (start > end) throw new StringIndexOutOfBoundsException(end - start); return new String(value, start, end - start); }
奥,原来是这样的,懂了!
Java优秀,值得学习。
学习资源:API手册+Java源码+清净的心地。
以上是关于JavaSE8基础 StringBuffer substring 将变量分割返回String,其本身不变的主要内容,如果未能解决你的问题,请参考以下文章
JavaSE8基础 StringBuffer 将一个char字符重复指定次数后输出
JavaSE8基础 StringBuffer delete 删除指定索引值的一个字符
JavaSE8基础 StringBuffer substring 将变量分割返回String,其本身不变
JavaSE8基础 StringBuffer reverse 倒置缓冲区内的字符串