C#中怎样用list<vector3>给另一个同类型的list赋值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中怎样用list<vector3>给另一个同类型的list赋值相关的知识,希望对你有一定的参考价值。
比如
list<vector3> v1;
list<vector3>v2;//假设v2中存储有值
v1=v2;//这一句对还是下面循环对或者还有其他的办法
for(int c=0;c<v2.count;c++)
v1[c]=v2[c];
求解答
这一行运行之后,你的v1和v2指向的是同一对象,后面无论对v1还是v2处理都会影响对方,后面的那个for就毫无意义了。追问
v1=v2这样能把v2的值全部都复制到v1中吗
还是不用这个赋值语句用下面那个循环才能进行赋值呢
说的不够清楚吗,那举个例子,比如说
List<int> a=null;List<int> b=new List<int>();
b.Add(10);
b.Add(11);
//此时b中有两个元素10和11,a为空
a=b;
//此时ab是同一对象,都包含10和11
a[0]=20;
//此时ab都包含两个元素,20和11本回答被提问者和网友采纳 参考技术B 遍历List中元素,然后将每次循环的值添加到v2中
list<vector3> mList = new list<vector3>();
list<vector3> v2= new list<vector3>();
foreach (vector3 s in mList )
v2.Add(s);
Console.WriteLine(s);
关于用C#对List<>中去除重复元素的问题!
class Program
static void Main(string[] args)
string basePath = @"D:\Doc\wordcount.mdb";
string connstr = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + basePath;
string sql = "select * from [wordcount]";
List<WordInfo> list = new List<WordInfo>();
using (OleDbConnection conn = new OleDbConnection(connstr))
try
OleDbCommand cmd = new OleDbCommand(sql, conn);
conn.Open();
OleDbDataReader reader = cmd.ExecuteReader();
while (reader.Read())
WordInfo tmp = new WordInfo();
tmp.word = reader.GetString(1);
tmp.flag = 0;
list.Add(tmp);
reader.Close();
conn.Close();
catch (Exception ex)
Console.WriteLine("异常:" + ex.Message);
Console.WriteLine(list.Count);
public struct WordInfo
public string word;
public int flag;
以上是我的部分代码,我想做的是,去除list中“word”字符串重复的结构体,请问代码该如何书写,我自己写的总是提示数组超出索引而报错,请各位大神指教,真的很急!
List<WordInfo> list = new List<WordInfo>();
WordInfo temp;
for (int i = 0; i < 10; i++)
temp = new WordInfo();
temp.word = "word";
temp.flag = i;
list.Add(temp);
for (int i = 0; i < 10; i++)
temp = new WordInfo();
temp.word = "word1";
temp.flag = i;
list.Add(temp);
var aa = from ll in list where ll.word == "word" select ll;// Linq 查找出所有 WordInfo 的word的值为 “word" 的元素
if(aa.Count()>0)// 判断是否有 word 为 “word" 的元素
var temp1 = aa.ToList()[0];// 保留一个 word的值为 “word" 的元素
while (aa.Count()>0)
list.Remove( aa.ToList()[0]);//移走所有 word的值为 “word" 的元素
list.Add(temp1);// 再添加一个 word的值为 “word" 的元素
参考技术A 可以用list.Distinct(),去除重复元素
以上是关于C#中怎样用list<vector3>给另一个同类型的list赋值的主要内容,如果未能解决你的问题,请参考以下文章
C#中的List<类名> 怎么理解?如把Datarow dr[0]=List<类名> 这怎么理解?
C#中怎样将List<自己定义>转为Json格式 及相关函数-DataContractJsonSerializer