static void Main(string[] args) { // コンストラクタ呼び出し var abbrs = new Abbreviations(); //問題7.2.3 //Countプロパティを呼び出して数を出力させる Console.WriteLine(abbrs.Count); Console.WriteLine(abbrs.Remove("APEC")?"成功":"失敗"); // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); foreach (var item in abbrs.Where(x => x.Key.Length == 3)) { Console.WriteLine($"{item.Key} = {item.Value}"); } }
static void Main(string[] args) { // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); //問題7.2.3 //Countプロパティを呼び出して数を出力させる Console.WriteLine(abbrs.Count); //Removeプロパティを呼び出して要素を削除する if(abbrs.Remove("NPT")){ Console.WriteLine("削除成功"); } else { Console.WriteLine("削除失敗"); } // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) Console.WriteLine("{0}は見つかりません", name); else Console.WriteLine("{0}={1}", name, fullname); } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) Console.WriteLine("{0} は見つかりません", japanese); else Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); //7.2.4(クラスにも追加あり) foreach (var item in abbrs.Where(x => x.Key.Length == 3)) { Console.WriteLine($"{item.Key} = {item.Value}"); } }
static void Main(string[] args) { // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); //演習問題 Console.WriteLine($"単語数:{abbrs.Count}"); Console.WriteLine(abbrs.Remove("ASEAN")); abbrs.Str(); }
static void Main(string[] args) { #region //var employeeDict = new Dictionary<int, Employee>() //{ // {100,new Employee(100,"清水遼久") }, // {112,new Employee(112,"芹沢洋和") }, // {125,new Employee(125,"岩瀬奈央子") }, //}; //var emp = employeeDict.Where(x => x.Value.Id % 2 == 0); //foreach (var item in emp) //{ // Console.WriteLine(item.Value.Name); //} ////リスト //var employee = new List<Employee>() //{ // new Employee(100,"清水遼久"), // new Employee(112,"芹沢洋和"), // new Employee(125,"岩瀬奈央子"), // new Employee(143,"山田太郎"), // new Employee(148,"池田次郎"), // new Employee(152,"高田三郎"), // new Employee(155,"石川幸也"), // new Employee(161,"中沢信也"), //}; //// Idが偶数のみディクショナリに変換する //var employeeDict = employee.Where(x=>x.Id % 2 == 0).ToDictionary(emp => emp.Id); //foreach (KeyValuePair<int, Employee> item in employeeDict) //{ // Console.WriteLine($"{item.Key} {item.Value.Name}"); //} #endregion #region ////ディクショナリ //var dict = new Dictionary<MonthDay, string>() //{ // {new MonthDay(3,5),"珊瑚の日" }, // {new MonthDay(8,4),"箸の日" }, // {new MonthDay(10,3),"登山の日" }, //}; //var md = new MonthDay(8, 4); //var s = dict[md]; //Console.WriteLine(s); #endregion #region //var lines = File.ReadAllLines("sample.txt"); //var we = new WordsExtractor(lines); //foreach (var item in we.Extract()) //{ // Console.WriteLine(item); //} #endregion var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); //Countプロパティを呼び出す Console.WriteLine(abbrs.Count); //Removeメソッドを呼び出す if (abbrs.Remove("NPT")) { Console.WriteLine("削除できました"); } else { Console.WriteLine("削除失敗"); } // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); foreach (var item in abbrs.Where(s => s.Key.Length == 3)) { Console.WriteLine($"{item.Key} = {item.Value}"); } //DuplicateKeySample(); //Console.WriteLine("*****7.1.1*****"); //string text = "Cozy lummox gives smart squid who asks for job pen"; //Exercise1_1(text); }
static void Main(string[] args) { #region 辞書登録プログラム //ast(); //Console.WriteLine("* 辞書登録プログラム *"); //ast(); //var dict = new Dictionary<string, List<string>>(); //do { // Console.WriteLine($"1.登録 2.表示 3.終了"); // try { // Console.Write('>'); // int select = int.Parse(Console.ReadLine()); // Console.WriteLine(); // if(select == 1) { // Console.Write("KEYを入力:"); // var key = Console.ReadLine(); // Console.Write("VALUEを入力:"); // var value = Console.ReadLine(); // if(dict.ContainsKey(key)) { // dict[key].Add(value); // } else { // dict[key] = new List<string> { value }; // } // Console.WriteLine("登録しました!"); // } else if(select == 2) { // if(dict.Count == 0) // Console.WriteLine("ディクショナリは空です。"); // else // foreach(var item in dict) { // foreach(var term in item.Value) { // Console.WriteLine("{0}:{1}", item.Key, term); // } // } // } else if(select == 3) { // break; // } else { // Console.WriteLine("1,2,3を選択してください!"); // } // } catch(Exception) { // Console.WriteLine(); // Console.WriteLine("数字1,2,3を入力してください!"); // } // Console.WriteLine(); //} while(true); #endregion //var text = "Cozy lummox gives smart squid who asks for job pen"; //Exercise1_1(text);//問題7.1.1 //Exercise1_2(text);//問題7.1.2 var abbrs = new Abbreviations(); //7.2.3 int count = abbrs.Count; Console.WriteLine($"用語数:{count}"); Console.WriteLine(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); //7.2.3 count = abbrs.Count; Console.WriteLine($"用語数:{count}"); Console.WriteLine(); if (abbrs.Remove(abbreviation)) { Console.WriteLine("削除成功"); } else { Console.WriteLine("削除失敗"); } //削除できているか確認 count = abbrs.Count; Console.WriteLine($"用語数:{count}"); Console.WriteLine(); foreach (var item in abbrs.Where(x => x.Key.Length == 3)) { Console.WriteLine($"{item.Key}={item.Value}"); } }
public static void Main(string[] args) { #region 辞書登録プログラム //Console.WriteLine("**********************"); //Console.WriteLine("* 辞書登録プログラム *"); //Console.WriteLine("**********************"); //while (true) //{ // Console.WriteLine("1.登録 2.内容を表示"); // Console.Write(">"); // var type = int.Parse(Console.ReadLine()); // if(type == 1) // { // DuplicateKey(); // } // else if (type == 2) // { // // ディクショナリの内容を列挙 // foreach (var item in dict) // { // foreach (var term in item.Value) // { // Console.WriteLine("{0} : {1}", item.Key, term); // } // } // break; // } // else // { // Console.WriteLine("正しい値を入力してください。"); // } //} #endregion #region 問題7.1 //var text = "Cozy lummox gives smart squid who asks for job pen"; //Console.WriteLine("---7.1.1---"); //Exercise1_1(text); //問題7.1.1 //Console.WriteLine("\n---7.1.2---"); //Exercise1_2(text); //問題7.1.2 #endregion // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine($"{name}は見つかりません"); } else { Console.WriteLine($"{name}={fullname}"); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine($"{japanese} は見つかりません"); } else { Console.WriteLine($"「{japanese}」の略語は {abbreviation} です"); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine($"{item.Key}={item.Value}"); } Console.WriteLine(); //7.2.3 Console.WriteLine($"用語数:{abbrs.Count}"); Console.Write("削除する省略語:"); var addrRemove = Console.ReadLine(); if (abbrs.Remove(addrRemove)) { Console.WriteLine($"{addrRemove}を削除しました"); } else { Console.WriteLine($"{addrRemove}は登録されてません"); } Console.WriteLine($"用語数:{abbrs.Count}"); //7.2.4 Console.WriteLine("\n---3文字の省略語---"); abbrs.Addr3(); }
static void Main(string[] args) { var text = "Cozy lummox gives smart squid who asks for job pen"; //Exercis1_1(text); //Exercis1_2(text); // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); //問題7-2-3 //Countプロパティを呼び出して数を出力させる Console.WriteLine($"登録されている用語の数:{abbrs.Count}"); //Removeメソッドを呼び出して要素を削除する Console.Write("削除する省略語を入力してください。:"); if (abbrs.Remove(Console.ReadLine())) { Console.WriteLine("削除しました。"); } else { Console.WriteLine("削除する省略語が見つかりませんでした。"); } Console.WriteLine(); // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); //7-2-4 //Keyが三文字のものだけを表示 abbrs.out3LettersKey(); }
static void Exercise1_1(string text) { var dict = new SortedDictionary <char, int>(); foreach (var ch in text.ToUpper()) { if ('A' <= ch && ch <= 'Z') { if (dict.ContainsKey(ch)) { //既に登録済み dict[ch]++; } else { //未登録 dict[ch] = 1; } } } foreach (var item in dict) { Console.WriteLine("{0}:{1}", item.Key, item.Value); } #endregion // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); //問題7.2.3 //Countプロパティを呼び出して数を出力させる Console.WriteLine(abbrs.Count); //Removeメソッドを呼び出して要素を削除する if (abbrs.Remove("NPT")) { Console.WriteLine("削除成功"); } else { Console.WriteLine("削除失敗"); } // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); //7.2.4 foreach (var item in abbrs.Where(x => x.Key.Length == 3)) //IEnumerableを使うことによって実装できる { Console.WriteLine($"{item.Key} = {item.Value}"); } }
static void Main(string[] args) { // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); //7-2-2 //Countプロパティを呼び出して数を出力させる Console.WriteLine(abbrs.Count); //7-2-3 //Removeプロパティを呼び出して出力させる if (abbrs.Remove("IOC")) { Console.WriteLine("削除成功"); } else { Console.WriteLine("削除失敗"); } //7-2-4 //3文字の省略語だけ取り出す foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine($"{item.Key}={item.Value}"); } Console.WriteLine(); foreach (var item in abbrs.Where(w => w.Key.Length == 3)) { Console.WriteLine($"{item.Key} = {item.Value}"); } // インデクサの利用例 //var names = new[] { "WHO", "FIFA", "NPT", }; //foreach (var name in names) //{ // var fullname = abbrs[name]; // if (fullname == null) // Console.WriteLine("{0}は見つかりません", name); // else // Console.WriteLine("{0}={1}", name, fullname); //} //Console.WriteLine(); //// ToAbbreviationメソッドの利用例 //var japanese = "東南アジア諸国連合"; //var abbreviation = abbrs.ToAbbreviation(japanese); //if (abbreviation == null) // Console.WriteLine("{0} は見つかりません", japanese); //else // Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); //Console.WriteLine(); //// FindAllメソッドの利用例 //foreach (var item in abbrs.FindAll("国際")) //{ // Console.WriteLine("{0}={1}", item.Key, item.Value); //} //Console.WriteLine(); }
static void Main(string[] args) { #region //var employeeDict = new Dictionary<int,Employee> { // { 100,new Employee(100,"清水遼久")}, // { 112,new Employee(112,"芹沢洋和")}, // { 125,new Employee(125,"岩瀬奈央子")}, //}; //Console.WriteLine($"{employeeDict.Sum(x=>x.Value.Id)}"); //foreach (KeyValuePair<int,Employee> item in employeeDict.Where(x=>x.Value.Id%2==0)) { // Console.WriteLine($"{item.Value.Id} = {item.Value.Name}"); //} //var employees = new List<Employee>() { // new Employee(100,"清水遼久"), // new Employee(112,"芹沢洋和"), // new Employee(125,"岩瀬奈央子"), // new Employee(143,"山田太郎"), // new Employee(148,"池田次郎"), // new Employee(152,"高田三郎"), // new Employee(155,"石川幸也"), // new Employee(161,"中沢信也"), //}; ////Idが偶数のみディクショナリに変換する //var employeeDict = employees.Where(emp => emp.Id % 2 == 0).ToDictionary(emp => emp.Id); //foreach (KeyValuePair<int, Employee> item in employeeDict) { // Console.WriteLine($"{item.Value.Id}{item.Value.Name}"); //} //var dict = new Dictionary<MonthDay, string> { // {new MonthDay(3,5),"珊瑚の日" }, // {new MonthDay(8,4),"箸の日" }, // {new MonthDay(10,3),"登山の日" }, //}; //var md = new MonthDay(8, 4); //var s = dict[md]; //Console.WriteLine(s); //var lines = File.ReadAllLines("sample.txt"); //var we = new WordsExtractor(lines); //foreach (var word in we.Extract()) { // Console.WriteLine(word); //} //static public void DuplicateKeySample() { // // ディクショナリの初期化 // var dict = new Dictionary<string, List<string>>() { // { "PC", new List<string> { "パーソナル コンピュータ", "プログラム カウンタ", } }, // { "CD", new List<string> { "コンパクト ディスク", "キャッシュ ディスペンサー", } }, // }; // // // ディクショナリに追加 // var key = "EC"; // var value = "電子商取引"; // if (dict.ContainsKey(key)) { // dict[key].Add(value); // } else { // dict[key] = new List<string> { value }; // } // // // ディクショナリの内容を列挙 // foreach (var item in dict) { // foreach (var term in item.Value) { // Console.WriteLine("{0} : {1}", item.Key, term); // } // } #endregion // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); //問題7.2.3 //Countプロパティを呼び出して数を出力させる // var count = abbrs.Count; Console.WriteLine(count); //Removeメソッドを呼び出して要素を削除する if (abbrs.Remove("NPT")) { Console.WriteLine("削除成功"); } else { Console.WriteLine("削除失敗"); } Console.WriteLine(); //問題7.2.4 foreach (var item in abbrs.Where(x => x.Key.Length == 3)) { Console.WriteLine(item.Key); } // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); }
static void Main(string[] args) { // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); // 7.2.3 (Countの呼び出し例) // 上のAddメソッドで、2つのオブジェクトを追加しているので、読み込んだ単語数+2が、Countの値になる。 var count = abbrs.Count; Console.WriteLine(abbrs.Count); Console.WriteLine(); // 7.2.3 (Removeの呼び出し例) if (abbrs.Remove("NPT")) { Console.WriteLine(abbrs.Count); } if (!abbrs.Remove("NPT")) { Console.WriteLine("削除できません"); } Console.WriteLine(); // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); }
static void Main(string[] args) { #region //var flowerDict = new Dictionary<string, int>() //{ // ["sunflower"] = 400, // ["pansy"] = 300, // ["tulip"] = 350, // ["rose"] = 500, // ["dahlia"] = 450, //}; //flowerDict["violet"] = 600; //flowerDict.Add("chulip", 650); #endregion #region //var employeeDict = new Dictionary<int, Employee> //{ // { 100,new Employee(100,"清水遼久")}, // { 112,new Employee(112,"芹沢洋和")}, // { 125,new Employee(125,"岩瀬奈央子")}, //}; //Console.WriteLine($"{employeeDict.Sum(emp => emp.Value.Id)}"); //var employees = employeeDict.Where(emp => emp.Value.Id % 2 == 0); //foreach (var item in employees) //{ // Console.WriteLine($"{item.Value.Name}"); //} //var employee = new List<Employee>() //{ // new Employee(100,"清水遼久"), // new Employee(112,"芹沢洋和"), // new Employee(125,"岩瀬奈央子"), // new Employee(143,"山田太郎"), // new Employee(148,"池田次郎"), // new Employee(152,"高田三郎"), // new Employee(155,"石川幸也"), // new Employee(161,"中沢信也"), //}; ////Idが偶数のみディクショナリに変換する //var employeeDict = employee.Where(emp => emp.Id % 2 == 0).ToDictionary(emp => emp.Id); //foreach (KeyValuePair<int, Employee> item in employeeDict) //{ // Console.WriteLine($"{item.Value.Id} {item.Value.Name}"); //} #endregion #region //var lines = File.ReadAllLines("sample.txt"); //var we = new WordsExtractor(lines); //foreach (var word in we.Extract()) //{ // Console.WriteLine(word); //} ////var dict = new Dictionary<MonthDay, string> ////{ //// {new MonthDay(3,5),"珊瑚の日" }, //// {new MonthDay(8,4),"箸の日" }, //// {new MonthDay(10,3),"登山の日" }, ////}; ////var md = new MonthDay(8, 4); ////var s = dict[md]; ////Console.WriteLine(s); //DuplicateKeySample(); #endregion #region 辞書登録プログラム //Console.WriteLine("********************"); //Console.WriteLine("*辞書登録プログラム*"); //Console.WriteLine("********************"); //Console.WriteLine(); //// ディクショナリの初期化 //var dict = new Dictionary<string, List<string>>() { }; //while(true) //{ // Console.WriteLine("1.登録 2.内容を表示 3.終了"); // Console.Write(">"); // var choice = int.Parse(Console.ReadLine()); // Console.WriteLine(); // switch (choice) // { // case 1: // // ディクショナリに追加 // Console.Write("KEYを入力: "); // var key = Console.ReadLine(); // Console.Write("VALUEを入力: "); // var value = Console.ReadLine(); // if (dict.ContainsKey(key)) // { // dict[key].Add(value); // } // else // { // dict[key] = new List<string> { value }; // } // Console.WriteLine("登録しました!"); // Console.WriteLine(""); // break; // case 2: // // ディクショナリの内容を列挙 // foreach (var item in dict) // { // foreach (var term in item.Value) // { // Console.WriteLine("{0} : {1}", item.Key, term); // } // } // Console.WriteLine(); // break; // case 3: // break; // default : // Console.WriteLine("1or2or3を選択してください。"); // Console.WriteLine(); // break; // } // if (choice == 3) // { // break; // } //} #endregion #region 演習問題7-1 //var text = "Cozy lummox gives smart squid who asks for job pen"; ////問題7-1 //Console.WriteLine("*****7-1-1*****"); //Exercise1_1(text); ////問題7-2 //Console.WriteLine("*****7-1-2*****"); //Exercise1_2(text); #endregion #region 演習問題7-2 // コンストラクタ呼び出し var abbrs = new Abbreviations(); // Addメソッドの呼び出し例 abbrs.Add("IOC", "国際オリンピック委員会"); abbrs.Add("NPT", "核兵器不拡散条約"); //問題7-2-3 //Countプロパティを呼び出して数を出力させる var count = abbrs.count; Console.WriteLine(abbrs.count); Console.WriteLine(); //問題7-2-3 //Removeプロパティを呼び出して数を出力させる if (abbrs.Remove("NPT")) { Console.WriteLine("削除成功"); } else { Console.WriteLine("削除失敗"); } Console.WriteLine(); //問題7-2-4 foreach (var item in abbrs.Where(x => x.Key.Length == 3)) { Console.WriteLine($"{item.Key} = {item.Value}"); } // インデクサの利用例 var names = new[] { "WHO", "FIFA", "NPT", }; foreach (var name in names) { var fullname = abbrs[name]; if (fullname == null) { Console.WriteLine("{0}は見つかりません", name); } else { Console.WriteLine("{0}={1}", name, fullname); } } Console.WriteLine(); // ToAbbreviationメソッドの利用例 var japanese = "東南アジア諸国連合"; var abbreviation = abbrs.ToAbbreviation(japanese); if (abbreviation == null) { Console.WriteLine("{0} は見つかりません", japanese); } else { Console.WriteLine("「{0}」の略語は {1} です", japanese, abbreviation); } Console.WriteLine(); // FindAllメソッドの利用例 foreach (var item in abbrs.FindAll("国際")) { Console.WriteLine("{0}={1}", item.Key, item.Value); } Console.WriteLine(); #endregion }