#2
apull2021-07-12 17:17
private string[] nums= new string[7];
这个就new了一次,后面的循环中都是改变num的值,你把sjs中的输出单独提出来就会发现添加的2次num值是相同的。 更改: 程序代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { public List<String[]> SelectNums = new List<string[]>(); private string[] nums;// = new string[7]; Random ra = new Random(); public void Sjs(int item) { //Random ra = new Random(); for (int i = 0; i < item; i++) { nums = new string[7];//生成新的数组 for (int z = 0; z < 7; z++) { this.nums[z] = ra.Next(10).ToString(); } this.SelectNums.Add(nums); } for (int i = 0; i < item; i++) { for (int z = 0; z < 7; z++) { Console.Write(this.SelectNums[i][z]+" "); } Console.WriteLine(); } } static void Main(string[] args) { Program li = new Program(); li.Sjs(2); for (int i = 0; i < 2; i++) { Console.Write("返回 "); for (int z = 0; z < 7; z++) { Console.Write(li.SelectNums[i][z] + " "); } Console.WriteLine(); } } } } |
只有本站会员才能查看附件,请 登录
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
public List<String[]> SelectNums = new List<string[]>();
private string[] nums = new string[7];
Random ra = new Random();
public void Sjs(int item)
{
Random ra = new Random();
for (int i = 0; i < item; i++)
{
for (int z = 0; z < 7; z++)
{
this.nums[z] = ra.Next(10).ToString();
}
this.SelectNums.Add(nums);
for (int z = 0; z < 7; z++)
{
Console.Write(this.SelectNums[i][z]+" ");
}
Console.ReadLine();
}
}
static void Main(string[] args)
{
Program li = new Program();
li.Sjs(2);
for (int i = 0; i < 2; i++)
{
Console.Write("返回 ");
for (int z = 0; z < 7; z++)
{
Console.Write(li.SelectNums[i][z] + " ");
}
Console.ReadLine();
}
}
}
}