c# - 为什么我的元组不能正确返回值来编程 main 方法?
问题描述
我有一个方法应该从类方法返回2个变量到main,但是当我检查方法返回的内容不正确时,我显然使用了我的元组错误。
using System;
namespace App1
{
public class Player
{
public int Health = 100;
public int Mana = 100;
static Tuple<int, int> SetAttributes(int pHealth, int pMana)
{
pHealth++;
pMana++;
Console.WriteLine("Health: " + pHealth + " Mana: " + pMana);
return new Tuple<int, int>(pHealth, pMana);
}//method end
static void Main(string[] args)
{
Player myPlayer = new Player();
SetAttributes(myPlayer.Health, myPlayer.Mana);
Console.WriteLine("In Main ...Health: " + myPlayer.Health + " Mana: " + myPlayer.Mana);
}
} //class End
}//Namespace end
解决方案
在您的main
方法中,您没有从SetAttributes()
这是一个更新的main
方法,供您读取元组值
static void Main(string[] args)
{
Player myPlayer = new Player();
var tuple = SetAttributes(myPlayer.Health, myPlayer.Mana);
Console.WriteLine("In Main ...Health: " + tuple.Item1 + " Mana: " + tuple.Item1);
}
这是元组的 MSDN 文档。
推荐阅读
- assembly - 从一个过程返回并使用 $ra 寄存器继续一个循环而不使用 JAL 指令
- c# - 如何在控制台应用程序中使用主方法之外的计时器
- python - 我将如何优化以下熊猫功能?
- angular - Angular observable 处理多个订阅者
- c# - 当同一个表单打开另一个表单时,如何将注意力集中在一个表单上?
- javascript - 在 JavaScript 中执行计算后,如何获取嵌套数组中的所有对象?
- android - 如何拦截一个网页的所有资源网络请求?
- wordpress - WordPress - 将 HTML 消息添加到现有元框
- kubernetes - 如何在 Kubernetes 中切换命名空间
- dart - Flutter - 对齐表格中的文本