方法中的参数的五种形式

方法的基本的语法格式为:

[作用域] 返回类型 方法名(参数1类型 参数1,参数2类型 参数2……)

{

  //方法体

}

形参和实参这两个概念针对的是值类型的参数,对于引用参数则不存在这个问题。

首先,区分形参和实参

Example:

  public int Foo(int i)

  {

    //方法体

  } 

  //调用Foo方法

  int a = 0;

  a = Foo(a);

在这个例子中,i是形参;a是实参。

其次,区分值参数、引用参数、输出参数、数组类型参数

值参数(Value parameter):

Example:

public double Get(double r)

{

  //方法体

}

使用值参数时,传递到方法体中的是实参的一个副本,而不是实参本身。

引用参数(Ref parameter):

Example:

public double Get(ref double r)

{

  //方法体

}

引用类型保存的是引用,而不是数值。引用参数传递到方法中的是其本身。

在调用还有引用参数的方法时,也需要使用ref关键字来标识参数。

输出参数(Out parameter):

Example:

public double Get(out double r)

{

  //方法体

}

C#提供了输出参数,可以返回多个值,输出参数使用out关键字定义。

与引用参数不同的是,输出参数不需要初始化。

数组类型参数(params type[]):

Example:

public double Get(params double[] r)

{

  //方法体

}

参数的类型一样但是个数不确定,这种类型的参数是通过数组的方式传递到方法中,

在方法体内往往需要用循环语句把数组参数遍历处理。

可选参数

Example:

public double Get(double r = 0)

{

  //方法体

}

可选参数就是将参数在定义的时候,设置一个默认值。

调用时若设置了该参数的值,则使用设置的值;若没有设置该参数的值,则使用默认参数。

时间: 2024-11-10 07:10:19

方法中的参数的五种形式的相关文章

转载:onCreate()方法中的参数Bundle savedInstanceState 的意义用法

Activity中有一个名称叫onCreate的方法.该方法是在Activity创建时被系统调用,是一个Activity生命周期的开始.可是有一点容易被忽视,就是onCreate方法的参数saveInsanceState.一般的程序开发中,很少用到这个参数.       onCreate方法的完整定义如下:      public void onCreate(Bundle saveInsanceState){                super.onCreate(saveInsanceSt

ajax 方法的使用以及方法中各参数的含义

由于近来经常在项目中使用 ajax 这个函数,在工作之余自己查找了相关的资料,并总结了 ajax 方法的使用,以及方法中各个参数的含义,供大家学习参考使用 type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数

Python中变量赋值的8种形式、需要注意哪些细节?

本文解释python中变量赋值的形式,并解释一些细节. python中变量赋值的几种形式 1 x = "long" # (1).基本形式 2 x, y = "long", "shuai" # (2).元组对应赋值 3 [x, y] = ["long", "shuai"] # (3).列表对应赋值 4 a, b, c, d = "long" # (4).序列赋值 5 a, *b = 'lo

Main方法中传入参数

↓ 这个时候会报错: Instantiate the class:DonutShop java.lang.ClassNotFoundException: DonutShop    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)    at java.security.AccessController.doPrivileged(Native Method)    at java.net.URLClassLoader.findCla

33.C#--方法中ref参数的使用

static void Main(string[] args){//方法中ref参数的使用,不考虑实用性,只讲ref使用方法//用ref实现奖金+500double salary = 5000;JiangJin(ref salary); //传实参Console.WriteLine("这个月的总工资是:{0}", salary);Console.ReadKey(); } public static void JiangJin(ref double s) //ref有自动返回功能 { s

2017-8-25 c# 获取url参数的五种方法(转)

假设当前页完整地址为:http://www.jbxue.com/aaa/bbb.aspx?id=5&name=kelli则: "http://"是协议名"www.jbxue.com"是域名"aaa"是站点名"bbb.aspx"是页面名(文件名)"id=5&name=kelli"是参数 下面分享几个举得url中相关参数的例子,包括完整url.域名等信息. 1,获取 完整url (协议名+域名+

Andriod中数据存储的五种方式

数据存储在开发中是使用最频繁的,在这里主要介绍Android平台中实现数据存储的5种方式,分别是: 1 使用SharedPreferences存储数据 2 文件存储数据 3 SQLite数据库存储数据 4 使用ContentProvider存储数据5 网络存储数据 下面将为大家一一详细介绍. 第一种: 使用SharedPreferences存储数据 SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在 Activity中 重载窗

Servlet中读取参数的几种方式

为每一Servlet设置初始化参数 可以为每一个Servlet在对应的web.xml中的Servlet节点下编写初始化参数,格式如下: <init-param> <param-name>userName</param-name> <param-value>admin</param-value> </init-param> 然后在servlet中用如下代码获取相应的参数: ServletConfig config = this.getS

SpringMVC jsp页面向controller传递参数的五种方式

一共是五种传参方式: 一:直接将请求参数名作为Controller中方法的形参 public  String login (String username,String password)   : 解释:括号中的参数必须与页面Form 表单中的name 名字相同 二:使用@RequestParam 绑定请求参数参数值 举例:public String login(RequestParam ("username") String name) : 解释:双引号中的username 必须与页