Exemplo n.º 1
0
        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}");
            }
        }
Exemplo n.º 2
0
        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}");
            } 
        }
Exemplo n.º 3
0
        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();
        }
Exemplo n.º 4
0
        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);
        }
Exemplo n.º 5
0
        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}");
            }
        }
Exemplo n.º 6
0
        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();
        }
Exemplo n.º 7
0
        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();
        }
Exemplo n.º 8
0
        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}");
            }
        }
Exemplo n.º 9
0
        static void Main(string[] args)
        {
            #region 7-1
            //	var text = "Cozy lummox gives smart squid who asks for job pen";
            //	Exercise1_1(text);
            //}
            //static void Exercise1_1(string text) {
            //	var dict = new Dictionary<char, int>();

            //	foreach (var item in text) {
            //		char key = char.ToUpper(item);
            //		if (item == ' ') {
            //			continue;
            //		} else {
            //			if ('A' <= key && key <= 'Z') {
            //				if (dict.ContainsKey(key)) {
            //					dict[key]++;
            //				} else {
            //					dict.Add(key, 1);
            //				}
            //			}
            //		}
            //	}
            //	foreach (var item in dict.OrderBy(x => x.Key)) {
            //		Console.WriteLine("{0}:{1}",item.Key,item.Value);
            //	}
            #endregion
            // コンストラクタ呼び出し
            var abbrs = new Abbreviations();

            // Addメソッドの呼び出し例
            abbrs.Add("IOC", "国際オリンピック委員会");
            abbrs.Add("NPT", "核兵器不拡散条約");
            //7.2.3
            Console.WriteLine(abbrs.Count);

            //7.2.4

            // インデクサの利用例
            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();
        }
Exemplo n.º 10
0
        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();
        }
Exemplo n.º 11
0
        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();
        }
Exemplo n.º 12
0
        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();
        }
Exemplo n.º 13
0
        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
        }