String和StringBuffer作为参数传递(一个小注意事项)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public static void main(String[] args) {
       String s1 = "Hello";
       String s2 = "World";
       System.out.println(s1 + "-----------" + s2);//Hello-----------World
       change(s1, s2);
       System.out.println(s1 + "-----------" + s2);//Hello-----------World
 
       StringBuffer sb1 = new StringBuffer("Hello");
       StringBuffer sb2 = new StringBuffer("World");
       System.out.println(sb1 + "-------------" + sb2);//Hello-----------World
       changeBuffer(sb1, sb2);
       System.out.println(sb1 + "-------------" + sb2);//Hello-------------WorldWorld
   }
 
   private static void changeBuffer(StringBuffer sb1, StringBuffer sb2) {
       sb1 = sb2;
       sb2 = sb1.append(sb2);
   }
 
   private static void change(String s1, String s2) {
       s1 = s2;
       s2 = s1 + s2;
   }

  注意:StringBuffer直接赋值不会改变实际内容,如果做了操作就会改变

posted @   CGGirl  阅读(52)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示