C#一个方法返回2个值
推荐于2017-11-25
展开全部
你要么返回数组,要么使用ref、out。
1、返回数组方式:
public int[] Fun(){...}
至于数组中哪个是面板哪个是周长只能自己约定
2、ref或out方式,你这种情况用out即可
public void Fun(out s,out l){
l=...//计算周长
s=...//计算面积
}
在你的方法中计算完成后将面积的结果赋值给s,周长赋值给l
调用时:
int s,l;
Fun(out s,out l);
然后s,l就是面积和周长。
1、返回数组方式:
public int[] Fun(){...}
至于数组中哪个是面板哪个是周长只能自己约定
2、ref或out方式,你这种情况用out即可
public void Fun(out s,out l){
l=...//计算周长
s=...//计算面积
}
在你的方法中计算完成后将面积的结果赋值给s,周长赋值给l
调用时:
int s,l;
Fun(out s,out l);
然后s,l就是面积和周长。
更多追问追答
追问
大神,能不能简单写下。小白,不明白你这样说的。谢了。
如何输出
圆面积是{}
圆周长是{}
追答
上面少写了参数,再清楚一些完整的示例就是:
public void 计算面积(out int 面积,out int 周长,int 长,int 宽){
面积=长*宽;
周长=2*(长+宽);
}
//调用
int 面积,周长;
计算面积(out 面积,out 周长,10,5);
Console.WriteLine("面积="+面积);
Console.WriteLine("周长="+周长);
但你可能需要传递计算周长或面积的其它参数,比如长、宽,这个你自己加。我只说这里的out是什么意思。一个参数加了out后,在你的方法体内改变这个参数的值后,
展开全部
有两种方式:
第一种:采用引用,示例如下:
void Fun(out double area,out double perimeter)
{
//计算面积和周长并将面积赋值给area,周长赋值给perimeter
}
或
void Fun(ref double area,ref double perimeter)
{
//计算面积和周长并将面积赋值给area,周长赋值给perimeter
}
第二种:
public class Info
{
public double area;
public double perimeter;
}
Info Fun()
{
Info info=new Info();
//计算面积和周长并将面积赋值给info.area,周长赋值给info.perimeter
return info;
}
个人推荐采用第二种,可扩展性好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
方法一.重新建一个新实体类,声明变量字段,可以放你所有的字段,周长,面积,半径, 等等你有用的字段,然后写个方法,传入你要计算测参数给你那个方法,在把你的计算值赋给这个实体类实例的添加方法返回一个对象,需要占内存,把这两个值放到数据库中;
方法二就是你写个方法用type区别计算两次,或写两个方法
方法三已字符串形式拼接返回前台用js截取赋值都行。
如果是后面一直要用这两个值的话,个人建议用第一种,这就看你前台的需求你了。
方法二就是你写个方法用type区别计算两次,或写两个方法
方法三已字符串形式拼接返回前台用js截取赋值都行。
如果是后面一直要用这两个值的话,个人建议用第一种,这就看你前台的需求你了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一种方法:返回类型改变
如
Public Dictionary<string,object> XXX()
{}
那么返回的这个字典就能包含多个了
第二种就是使用Out或Ref关键字传输出来
例如
Public void XXX(out p1,ref p2)
{
}
那么通过传参就能够拿到多个返回值了
如
Public Dictionary<string,object> XXX()
{}
那么返回的这个字典就能包含多个了
第二种就是使用Out或Ref关键字传输出来
例如
Public void XXX(out p1,ref p2)
{
}
那么通过传参就能够拿到多个返回值了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
3种思路:
1:可以将你要返回的多个值当作是一个对象的多个属性,直接返回对象,达到最终结果
2:加ref
3:如果2个值是一个类型,可以考绿用数组,集合。。意思是一样
1:可以将你要返回的多个值当作是一个对象的多个属性,直接返回对象,达到最终结果
2:加ref
3:如果2个值是一个类型,可以考绿用数组,集合。。意思是一样
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询