码迷,mamicode.com
首页 > 其他好文 > 详细

形式参数和实际参数的区别

时间:2018-06-21 21:08:07      阅读:731      评论:0      收藏:0      [点我收藏+]

标签:作用域   参数传递   函数   line   pac   article   hello   sys   tca   

int max(int a, int b)
{
 函数体...;
 a...;
 b...;
}
此处的a,b就是形式参数,形参的作用域只在函数max内有效,max外不识别,在函数运行的时候并不给形式参数分配内存;
当我们在其他函数中(如main函数)调用max函数时,如 result = max(x, y);
此处的x,y就是实际参数,运行的时候将x的值传递给a,y的值传递给b,系统需要给x,y分配内存地址,其作用域范围为调用函数中。

 

 

 

 

注:也就是说:形式参数就是 方法中的抽象的 公用的参数,实际参数就是具体赋值的参数

 

 

延伸:形式参数:
 *         基本类型:形式参数的改变不影响实际参数
 *         引用类型:形式参数的改变直接影响实际参数
 * 
 * 注意:
 *         String作为参数传递,效果和基本类型作为参数传递是一样的。

 

 

eg:package cn.itcast_08;

/*
 * 面试题:
 * 1:String,StringBuffer,StringBuilder的区别?
 * A:String是内容不可变的,而StringBuffer,StringBuilder都是内容可变的。
 * B:StringBuffer是同步的,数据安全,效率低;StringBuilder是不同步的,数据不安全,效率高
 * 
 * 2:StringBuffer和数组的区别?
 * 二者都可以看出是一个容器,装其他的数据。
 * 但是呢,StringBuffer的数据最终是一个字符串数据。
 * 而数组可以放置多种数据,但必须是同一种数据类型的。
 * 
 * 3:形式参数问题
 * String作为参数传递
 * StringBuffer作为参数传递 
 * 
 * 形式参数:
 *         基本类型:形式参数的改变不影响实际参数
 *         引用类型:形式参数的改变直接影响实际参数
 * 
 * 注意:
 *         String作为参数传递,效果和基本类型作为参数传递是一样的。
 */
public class StringBufferDemo {
    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
        change(sb1, sb2);
        System.out.println(sb1 + "---" + sb2);// hello---worldworld

    }

    public static void change(StringBuffer sb1, StringBuffer sb2) {
        sb1 = sb2;
        sb2.append(sb1);
    }

    public static void change(String s1, String s2) {
        s1 = s2;
        s2 = s1 + s2;
    }
}
转载出处:https://blog.csdn.net/u012102536/article/details/53171809

形式参数和实际参数的区别

标签:作用域   参数传递   函数   line   pac   article   hello   sys   tca   

原文地址:https://www.cnblogs.com/zhznb/p/9210770.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!