using System;
using System.Linq;
using System.Collections.Generic;
public class Test
{
class item {
public string name {get;set;}
public int identifier {get;set;}
public item (int identifier, string name) {
this.name = name;
this.identifier = identifier;
}
public override string ToString () {
return string.Format("{0} / {1}",this.identifier,this.name);
}
}
public static void Main() {
List<item> List1 = new List<item>(new item[]{
new item(1,"a"),
new item(2,"abandon"),
new item(3,"abandoned"),
new item(4,"ability"),
new item(5,"able"),
new item(6,"about"),
new item(7,"above"),
new item(8,"abroad"),
new item(9,"absence"),
new item(10,"absent"),
new item(11,"absolute"),
new item(12,"absolutely"),
new item(13,"absorb"),
new item(14,"abuse"),
new item(15,"abuse"),
new item(16,"academic"),
new item(17,"accent"),
new item(18,"accept"),
new item(19,"acceptable"),
new item(20,"access"),
new item(21,"accident"),
new item(22,"accidental"),
new item(23,"accidentally"),
new item(24,"accommodation"),
new item(25,"accompany"),
new item(26,"according to"),
new item(27,"account")
});
List<item> List2 = new List<item>(new item[] {
new item(5,"foo"),
new item(9,"bar"),
new item(14,"qux"),
new item(25,"notinscope")
});
Dictionary<int,item> l2dic = List2.ToDictionary(x => x.identifier);
item itm;
foreach(item x in List1) {
if(l2dic.TryGetValue(x.identifier,out itm)) {
x.name = itm.name;
}
}
//print entries
foreach(item x in List1) {
Console.WriteLine(x);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CgkKCWNsYXNzIGl0ZW0gewoJICAgcHVibGljIHN0cmluZyBuYW1lIHtnZXQ7c2V0O30KCSAgIHB1YmxpYyBpbnQgaWRlbnRpZmllciB7Z2V0O3NldDt9CgkgICBwdWJsaWMgaXRlbSAoaW50IGlkZW50aWZpZXIsIHN0cmluZyBuYW1lKSB7CgkgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKCSAgICAgICB0aGlzLmlkZW50aWZpZXIgPSBpZGVudGlmaWVyOwoJICAgfQoJICAgcHVibGljIG92ZXJyaWRlIHN0cmluZyBUb1N0cmluZyAoKSB7CgkgICAgICAgcmV0dXJuIHN0cmluZy5Gb3JtYXQoInswfSAvIHsxfSIsdGhpcy5pZGVudGlmaWVyLHRoaXMubmFtZSk7CgkgICB9Cgl9CgkKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkgewoJCUxpc3Q8aXRlbT4gTGlzdDEgPSBuZXcgTGlzdDxpdGVtPihuZXcgaXRlbVtdewoJCQluZXcgaXRlbSgxLCJhIiksCgkJCW5ldyBpdGVtKDIsImFiYW5kb24iKSwKCQkJbmV3IGl0ZW0oMywiYWJhbmRvbmVkIiksCgkJCW5ldyBpdGVtKDQsImFiaWxpdHkiKSwKCQkJbmV3IGl0ZW0oNSwiYWJsZSIpLAoJCQluZXcgaXRlbSg2LCJhYm91dCIpLAoJCQluZXcgaXRlbSg3LCJhYm92ZSIpLAoJCQluZXcgaXRlbSg4LCJhYnJvYWQiKSwKCQkJbmV3IGl0ZW0oOSwiYWJzZW5jZSIpLAoJCQluZXcgaXRlbSgxMCwiYWJzZW50IiksCgkJCW5ldyBpdGVtKDExLCJhYnNvbHV0ZSIpLAoJCQluZXcgaXRlbSgxMiwiYWJzb2x1dGVseSIpLAoJCQluZXcgaXRlbSgxMywiYWJzb3JiIiksCgkJCW5ldyBpdGVtKDE0LCJhYnVzZSIpLAoJCQluZXcgaXRlbSgxNSwiYWJ1c2UiKSwKCQkJbmV3IGl0ZW0oMTYsImFjYWRlbWljIiksCgkJCW5ldyBpdGVtKDE3LCJhY2NlbnQiKSwKCQkJbmV3IGl0ZW0oMTgsImFjY2VwdCIpLAoJCQluZXcgaXRlbSgxOSwiYWNjZXB0YWJsZSIpLAoJCQluZXcgaXRlbSgyMCwiYWNjZXNzIiksCgkJCW5ldyBpdGVtKDIxLCJhY2NpZGVudCIpLAoJCQluZXcgaXRlbSgyMiwiYWNjaWRlbnRhbCIpLAoJCQluZXcgaXRlbSgyMywiYWNjaWRlbnRhbGx5IiksCgkJCW5ldyBpdGVtKDI0LCJhY2NvbW1vZGF0aW9uIiksCgkJCW5ldyBpdGVtKDI1LCJhY2NvbXBhbnkiKSwKCQkJbmV3IGl0ZW0oMjYsImFjY29yZGluZyB0byIpLAoJCQluZXcgaXRlbSgyNywiYWNjb3VudCIpCgkJfSk7CgkJCgkJTGlzdDxpdGVtPiBMaXN0MiA9IG5ldyBMaXN0PGl0ZW0+KG5ldyBpdGVtW10gewoJCQluZXcgaXRlbSg1LCJmb28iKSwKCQkJbmV3IGl0ZW0oOSwiYmFyIiksCgkJCW5ldyBpdGVtKDE0LCJxdXgiKSwKCQkJbmV3IGl0ZW0oMjUsIm5vdGluc2NvcGUiKQoJCX0pOwoJCQoJCURpY3Rpb25hcnk8aW50LGl0ZW0+IGwyZGljID0gTGlzdDIuVG9EaWN0aW9uYXJ5KHggPT4geC5pZGVudGlmaWVyKTsKCQlpdGVtIGl0bTsKCQlmb3JlYWNoKGl0ZW0geCBpbiBMaXN0MSkgewoJCSAgICBpZihsMmRpYy5UcnlHZXRWYWx1ZSh4LmlkZW50aWZpZXIsb3V0IGl0bSkpIHsKCQkgICAgICAgIHgubmFtZSA9IGl0bS5uYW1lOwoJCSAgICB9CgkJfQoJCQoJCS8vcHJpbnQgZW50cmllcwoJCWZvcmVhY2goaXRlbSB4IGluIExpc3QxKSB7CgkJICAgIENvbnNvbGUuV3JpdGVMaW5lKHgpOwoJCX0KCX0KfQ==