C#,什么';将值从一个int复制到另一个int的最简单方法是什么?

C#,什么';将值从一个int复制到另一个int的最简单方法是什么?,c#,C#,我不熟悉编码,我有一个问题,我需要将num1、num2和num3的值赋值给4,5,6和7,8,9。有没有更简单、更美观的方法?谢谢 int num4 = num1; int num5 = num2; int num6 = num3; int num7 = num1; int num8 = num2; int num9 = num3; num1、num2和num3取自用户输入,在修改值1、2、3之后,我需要将它们分配给这4、5、6、7、8、9,以便澄清 编辑:为了得到更多的澄清,我有一个程序,我

我不熟悉编码,我有一个问题,我需要将num1、num2和num3的值赋值给4,5,6和7,8,9。有没有更简单、更美观的方法?谢谢

int num4 = num1;
int num5 = num2;
int num6 = num3;
int num7 = num1;
int num8 = num2;
int num9 = num3;
num1、num2和num3取自用户输入,在修改值1、2、3之后,我需要将它们分配给这4、5、6、7、8、9,以便澄清

编辑:为了得到更多的澄清,我有一个程序,我需要使用3个不同的循环来打印一些数字。我不能使用相同的值,因为它们在每次循环后都会发生更改。如果我是对的,我只是想知道是否有更好的方法可以做到这一点:)

Console.Write(“输入起始编号:”);
int num1=Convert.ToInt32(Console.ReadLine());
控制台。写入(“输入结束号:”);
int num2=Convert.ToInt32(Console.ReadLine());
控制台。写入(“输入升级编号:”);
int num3=Convert.ToInt32(Console.ReadLine());
Console.WriteLine(“\n”);
而(num1>num2)
{
Console.WriteLine(“错误!第一个数字必须小于
第二个。\n“;
控制台。写入(“输入起始编号:”);
num1=Convert.ToInt32(Console.ReadLine());
Console.Write(“输入结束号:\n”);
num2=Convert.ToInt32(Console.ReadLine());
}
而(num3==0)
{
Console.WriteLine(“错误!升级编号必须大于0,
输入一个新号码。\n“;
控制台。写入(“输入升级编号:”);
num3=Convert.ToInt32(Console.ReadLine());
}
int num4=num1;
int num5=num2;
int num6=num3;
int num7=num1;
int num8=num2;
int num9=num3;
Console.WriteLine();

while(num1您可以尝试使用数组(因此现在
num1
nums[0]
等)


也可以使用循环:

for (int i = 3 ; i < nums.Length; i++)
{
    nums[i] = nums[i - 3];
}
for(int i=3;i
每个示例只更改一个变量。您可以更形象地命名它们,并重用未更改的两个变量。例如:

var max = num2;
var increment = num3;   

var whileCounter = num1;  
while (whileCounter <= max)
{
    Console.WriteLine("{0}", whileCounter );
    whileCounter += increment ;
}

Console.WriteLine();

var doCounter = num1;
do
{
    Console.WriteLine("{0}", doCounter );
    doCounter += increment;
} while (doCounter <= max);

Console.WriteLine();

var forCounter = num1;
for (; forCounter <= max;)
{
    Console.WriteLine("{0}", forCounter);
    forCounter += increment;
}
var max=num2;
var增量=num3;
var whileCounter=num1;

然而(当计数器没有更多细节地查看循环时,我不知道你能做什么比这更简单、更优化。我不明白你为什么要将值“复制”到多个新变量,而不是在多个位置使用原始值。在这里介绍循环的概念可能很有趣:)不要这样做-如果有人无缘无故地将变量赋值随机重写到数组中,我绝对不会接受代码复查。你应该编写清晰的代码来传达它的意图-在不需要数组的情况下使用数组是令人困惑的哦,我没有看到我只更改了一个数组的事实,非常感谢!你能解释一下为什么要这样做吗使用var而不是int,或者在不应该使用int的时候使用var?这主要是一个偏好问题。var只是根据您分配给它的内容来假定类型。因此,在某些情况下,您必须使用完整类型(即,您从NULL开始,希望稍后分配一个非NULL值),但在大多数情况下,您应该只使用var。有些人认为键入完整类型更为清晰,但如果您的代码是清晰的,那么这应该是一个没有实际意义的问题
int[] nums = new int[9];

nums[0] = 0;
nums[1] = 1;
nums[2] = 2;

//values are assigned from right to left so You can assign many in one line
nums[3] = nums[6] = nums[0];
nums[4] = nums[7] = nums[1];
nums[5] = nums[8] = nums[2];

Console.WriteLine(string.Join(", ", nums)); //0, 1, 2, 0, 1, 2, 0, 1, 2
for (int i = 3 ; i < nums.Length; i++)
{
    nums[i] = nums[i - 3];
}
var max = num2;
var increment = num3;   

var whileCounter = num1;  
while (whileCounter <= max)
{
    Console.WriteLine("{0}", whileCounter );
    whileCounter += increment ;
}

Console.WriteLine();

var doCounter = num1;
do
{
    Console.WriteLine("{0}", doCounter );
    doCounter += increment;
} while (doCounter <= max);

Console.WriteLine();

var forCounter = num1;
for (; forCounter <= max;)
{
    Console.WriteLine("{0}", forCounter);
    forCounter += increment;
}