C# 将整数输入存储在 class 中以供以后调用?
C# store an integer input in class for recall later?
我想将用户输入的整数存储为实例级变量,以便以后调用它
到目前为止 Class.cs 我有:
namespace home
{
internal class Class
{
public string id;
public Class()
{
Console.WriteLine("please enter ID");
string input = Console.ReadLine();
int id;
Int32.TryParse(input, out id);
}
}
}
然后在 program.cs:
using home;
Class object1 = new Class();
Console.WriteLine(object1.id);
这允许用户输入数字,但是之后不会打印数字。
我已经设法回忆起一个字符串输入,例如一个名字,但我无法让它回忆起一个数字输入,所以一切正常,除了数字被保存并在稍后显示。如果我把 Console.WriteLine(id);
放在 class.cs 中然后它会显示它,但显然它只是显示输入而不是真正存储它。
您正在将 TryParse 调用的结果保存在 Class 构造函数内部声明的“int id”变量中,因此在构造函数完成执行后释放。要修复您的代码,您应该将您的 ID 保存在 Class class.
中声明的“字符串 ID”字段中
如果要访问与局部变量(在方法中声明的变量)共享名称的成员变量(在 class 中声明的变量),则必须在其前面加上“this.”。 =12=]
现在我不确定你是否打算将其声明为字符串,但如果你这样做了,你可以这样做
internal Class()
{
public string id;
public Class()
{
Console.WriteLine("please enter ID");
id = Console.ReadLine();
}
}
如果您打算将其声明为 int,则可以改为这样做
internal Class()
{
public int id;
public Class()
{
Console.WriteLine("please enter ID");
string id = Console.ReadLine();
this.id = int.Parse(id);
}
}
我想将用户输入的整数存储为实例级变量,以便以后调用它
到目前为止 Class.cs 我有:
namespace home
{
internal class Class
{
public string id;
public Class()
{
Console.WriteLine("please enter ID");
string input = Console.ReadLine();
int id;
Int32.TryParse(input, out id);
}
}
}
然后在 program.cs:
using home;
Class object1 = new Class();
Console.WriteLine(object1.id);
这允许用户输入数字,但是之后不会打印数字。
我已经设法回忆起一个字符串输入,例如一个名字,但我无法让它回忆起一个数字输入,所以一切正常,除了数字被保存并在稍后显示。如果我把 Console.WriteLine(id);
放在 class.cs 中然后它会显示它,但显然它只是显示输入而不是真正存储它。
您正在将 TryParse 调用的结果保存在 Class 构造函数内部声明的“int id”变量中,因此在构造函数完成执行后释放。要修复您的代码,您应该将您的 ID 保存在 Class class.
中声明的“字符串 ID”字段中如果要访问与局部变量(在方法中声明的变量)共享名称的成员变量(在 class 中声明的变量),则必须在其前面加上“this.”。 =12=]
现在我不确定你是否打算将其声明为字符串,但如果你这样做了,你可以这样做
internal Class()
{
public string id;
public Class()
{
Console.WriteLine("please enter ID");
id = Console.ReadLine();
}
}
如果您打算将其声明为 int,则可以改为这样做
internal Class()
{
public int id;
public Class()
{
Console.WriteLine("please enter ID");
string id = Console.ReadLine();
this.id = int.Parse(id);
}
}