zoukankan      html  css  js  c++  java
  • 值传递和引用传递

    public class Test{ 
    
       public static void stringReplace(String text){ 
    
            text=text+”c”; 
        } 
    
        public static void bufferReplace(StringBuffer text){ 
    
            text=text.append("c"); 
    
         } 
    
       public static void main(String args[]){   
    
            String textString=new String("java"); 
    
            StringBuffer textBuffer=new StringBuffer("java"); 
    
            stringReplace(textString); 
    
            bufferReplace(textBuffer); 
    
            System.out.println(textString+textBuffer); 
    
          } 
    
       }

    输出:

    javajavac

    原因:除了用StringBuffer.append()方法会改变值以外,其他的通过方法调用的是改变不了值的。

         StringBuffer追加内容追加到对应的地址指向的内容中。所以在方法加appen了,就会改变他的值。

       对于一般类型的数据,它传递的是值,对于类的实例它传递的是类的引用。

    往事如烟,余生有我.
  • 相关阅读:
    LIS
    原根
    数三角形
    组合数问题
    最短路问题
    2020总结
    树状数组
    康托展开
    LCA
    并查集
  • 原文地址:https://www.cnblogs.com/assistants/p/9529041.html
Copyright © 2011-2022 走看看