以下代码将为我提供一个随机数:
Random r = new Random();
int srandom = r.Next(2147483647);
我想将它保存到字符串/ int / long或者我将如何使用相同的数字。因此,例如,如果我现在调用srandom我会得到随机数,但过了一段时间它会改变。我希望它保持不变。
答案 0 :(得分:3)
您可以在类中创建一个静态字段,并在程序生命周期中通过从静态构造函数设置它来初始化一次:
public class YourClass{
private static readonly int g_RandomInt;
static YourClass(){
g_RandomInt = new Random().Next();
}
public void InstanceMethod()
{
Console.WriteLine(g_RandomInt);
}
}
答案 1 :(得分:0)
您可以执行以下操作:
Globals8.GlobalInt8 = Globals8.GlobalInt8.HasValue ? Globals8.GlobalInt8 : srandom;
并将变量GlobalInt8声明为可以为空的int:
public static class Globals8
{
private static int? globalInt8 = default(int?);
public static int? GlobalInt8
{
get { return globalInt8;}
set { globalInt8 = value;}
}
}
同样的事情可以应用于长变量。这里发生的事情是将值初始化为默认值,该值与引用对象中的null类似。之后,检查变量是否有值,然后忽略它。否则你设定它的价值。
希望这很有用。