
12-02Java语言基础(StringBuffer(2))
发布日期:2021-05-06 23:59:36
浏览次数:25
分类:精选文章
本文共 2175 字,大约阅读时间需要 7 分钟。
StringBuffer的替换和反转功能
相关方法:
public StringBuffer replace(int start, int end, String str); 从start到end用str替换,还是左开右闭哦poblic StringBuffer reverse(); 字符串反转
代码:
public class Demo4_StringBuffer { public static void main(String[] args) { StringBuffer sb = new StringBuffer("heima"); sb.replace(0, 4, "xiaoxin"); System.out.println(sb.toString()); sb.reverse(); System.out.println(sb.toString()); }}
输出:
xiaoxinaanixoaix
StringBuffer的截取功能
相关方法:
public String substring(int start) 从指定位置截取到末尾public String substring(int start, int end) 截取指定一段,包括头部,不包括尾部注意事项:返回值类型不再是StringBuffer本身
代码:
public class Demo5_StringBuffer { public static void main(String[] args) { StringBuffer sb = new StringBuffer("woaixiaoxin"); String str = sb.substring(4); System.out.println(str); String str1 = sb.substring(1, 4); //包含头部,不包含尾部 System.out.println(str1); }}
StringBuffer和String的相互转换
String --> StringBuffer:
1、通过构造方法2、通过append方法
代码:
public class Demo6_StringBuffer { public static void main(String[] args) { StringBuffer sb = new StringBuffer("haha"); System.out.println(sb); StringBuffer sb2 = new StringBuffer(); sb2.append("heima"); System.out.println(sb2); }}
输出:
hahaheima
StringBuffer --> String
1、通过构造方法2、通过toString()方法3、通过subString(0, length)
public class Demo6_StringBuffer { public static void main(String[] args) { StringBuffer sb = new StringBuffer("heima"); String s1 = new String(sb); System.out.println(s1); String s2 = sb.toString(); System.out.println(s2); String s3 = sb.substring(0, s2.length()); System.out.println(s3); }}
输出:
heimaheimaheima
StringBuffer和String分别作为参数传递
代码:
public class Demo7_StringBuffer { public static void main(String[] args) { String str = new String("haha"); changeString(str); System.out.println(str); StringBuffer sb = new StringBuffer("hahaha"); changeStringBuffer(sb); System.out.println(sb); } public static void changeString(String s) { s += "abc"; } public static void changeStringBuffer(StringBuffer sb) { sb.append("abc"); }}
输出:
hahahahahaabc
分析:
1、String在改变值时,底层调用的是StringBuffer,所以进入函数后的s返回的是新的String的地址,所以原来的s的内容是不变的2、StringBuffer在改变值时,该地址下的内容被改变,所以其值被改变。
发表评论
最新留言
不错!
[***.144.177.141]2025年04月16日 00时06分55秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
一篇解决JMM与volatile详解(二)
2021-05-08
数据结构之数组与经典面试题(二)
2021-05-08
无锁并发框架-Disruptor的使用(二)
2021-05-08
Android wm命令
2021-05-08
boot.img 解包与打包
2021-05-08
Android4.4 平板背光设置
2021-05-08
spring boot@Value和bean执行顺序问题
2021-05-08
codeforces The Eternal Immortality 题解
2021-05-08
蓝桥杯 历届试题 幸运数 (堆+DFS)
2021-05-08
微信js-sdk使用简述(分享,扫码功能等)
2021-05-08
selenium 的介绍和爬取 jd数据
2021-05-08
【分享-一键在线抠图】在线免费去除图片背景
2021-05-08
layui表格checkbox选择全选样式及功能
2021-05-08
mxsrvs支持thinkphp3.2伪静态
2021-05-08
mui HTML5 plus 下载文件
2021-05-08
环信SDK 踩坑记webIM篇(一)
2021-05-08
通信基础知识
2021-05-08
DSP开发板准备
2021-05-08
测试基本
2021-05-08