黑马程序员技术交流社区

标题: 这段代码错哪儿了?了解参数的进来 [打印本页]

作者: 许大虾    时间: 2013-5-21 15:31
标题: 这段代码错哪儿了?了解参数的进来
  1. int a = 3;
  2. 2 Test(a);//调用者
  3. 3 //Console.WriteLine(a);
  4. 4 Add(30, 20,"aaa");
  5. 5 //如果一个方法一旦有参数,那么调用者就必须传参数,并且传参数的个数与对应位置上的类型必须一致
  6. 6 }
  7. 7 //被调用者
  8. 8 public static void Test(string  a) //形参
  9. 9 {
  10. 10 a = a + 1;
  11. 11 Console.WriteLine(a);
  12. 12 }
  13. 13 //求两个整数的合
  14. 14 public static void Add(string  a, string b,int  name)
  15. 15 {
  16. 16 Console.WriteLine("a+b={0}", a + b);
  17. 17 }
  18. 18
复制代码

作者: 李君言    时间: 2013-5-21 15:45
本帖最后由 李君言 于 2013-5-21 15:48 编辑

public static void Test ( string  a ) 这个方法接收的是string类型参数,
你传给它却是一个int类型
int a = 3;Test ( a ) ;

public static void Add(string  a, string b,int  name)这个对应接收的是string类型,string类型和int类型
传参数的时候就应该对应的string类型,string类型和int类型
例如Add("字符","字符",33);
作者: parker    时间: 2013-5-21 15:48
楼上正解!
作者: shenge321    时间: 2013-5-21 16:01
  1.         static void Main(string[] args)
  2.         {
  3.             int a = 3;
  4.             Test(a.ToString());//Test()方法传入的参数要求是string类型,不能直接写a,需要进行类型转换。
  5.             Add("30", "20", 22);//同上,方法里规定了传入参数的格式,前两个是string类型,后一个是int类型,故其跟的参数类型也应该是(string string int)
  6.             Console.ReadKey();
  7.         }

  8.         public static void Test(string a)//传入参数要求为string类型。如不符合,需在传入前进行数据类型转换操作。
  9.         {
  10.             a = a + 1;//字符串加字符串,如果要int型,需要先转换。
  11.             Console.WriteLine(a);//输出31
  12.         }

  13.         public static void Add(string a, string b, int name)//传入的三个参数要求分别是string类型、string类型和int类型。如不符合,需在传入前进行数据类型转换操作。
  14.         {

  15.             Console.WriteLine("a+B={0}", a + b);//因为a,b都为字符串,故a+b是字符串合并操作,输出3020。
  16.         }
复制代码

作者: HM朱百青    时间: 2013-5-21 16:48
你的两个方法参数传递有问题,Test这个方法需要参数是string,不应该给int类型的;Add方法需要的是string,string,int很显然你给的也不对,你给的是int,int,string,所以错误!说明了int是不能隐式转换为string的!
作者: 曾大鹏    时间: 2013-5-21 16:52
参数对应的类型 要一致
作者: chankamlam    时间: 2013-5-21 17:11
Add(30, 20,"aaa");
public static void Add(string  a, string b,int  name)

方法参数与调用不一致
作者: 秦二江    时间: 2013-5-21 19:14
{:soso_e133:}传递的参数的类型不对,参数类型 ,应和 函数的参数类型 一致
作者: 魏庆君    时间: 2013-5-22 13:49
这一题考虑到实参和形参的问题
在调用方法的时候,形参与实参的个数以及两种参数的类型都必须是一致的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2