C# : List

[".0s4*0|collections;datetime-format;list",["F@eCDNO^c","JABEIGIAMEPEJAKLMA","OOOCCSTUUUUTTUUUUYFGDRDADADADGDHDADADGDHDADADGDHDADFOBBBOBCBCOBCBOCOBCCPGDRDFADADWSTTUUUUTTUUUU","s.w.rfstd.",".NET","Array","Dictionary","List","String","2D","Async","Console","DataTable","Dates","DateTime","Enum","File","For","Foreach","Format","IEnumerable","If","IndexOf","Lambda","LINQ","Optimization","Parse","Path","Process","Property","Random","Regex","Replace","Sort","Split","Static","Substring","Switch","Tuple","While","Contains."," This method scans a List. It searches for a specific element to see if that element occurs at least once in the collection.","Contains is a useful"," method that declaratively searches. To use Contains, no for-loop is required. You can type (and maintain) less code.","First example."," We add System.Collections.Generic at the top of the source file. The Contains method is an instance method on the List type. ","Note: ","This means you can only call it on a constructed List type. The List instance can have any type parameter.","Parameters: ","The argument is the searched-for element. The LINQ Contains method accepts 2 parameters (it accepts an IEqualityComparer).","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","Based on:"," .NET 4.6\n\n","C# program that uses List Contains method","\n\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\n\nclass Program\n{\n static void Main()\n {","\n // Create List with three elements.\n ","var list = new ","List","<string>();\n list.Add(","\"cat\"",");\n list.Add(","\"dog\"",");\n list.Add(","\"moth\"",");","\n\n // Search for this element.\n ","if (list.","Contains","(","\"dog\"","))\n {\n Console.WriteLine(","\"dog was found\"",");\n }","\n\n // Search for this element in any string case.\n // ... This is the LINQ method with the same name.\n ","if (list.","Contains","(","\"MOTH\"",", StringComparer.OrdinalIgnoreCase))\n {\n Console.WriteLine(","\"MOTH was found (insensitive)\"",");\n }","\n\n // This element is not found.\n ","Console.WriteLine(list.","Contains","(","\"fish\"","));\n }\n}\n\n","Output","\n\ndog was found\nMOTH was found (insensitive)\nFalse","Notes, above program."," With var, a string List is constructed. Three string literal references are added to the collection's internal arrays through the Add method. ","Var ","var","String Literal ","string-literal","List Add ","list-add","Notes, continued."," The second method call uses 2 parameters. StringComparer.OrdinalIgnoreCase implements the IEqualityComparer interface. This allows an insensitive string search. ","IEqualityComparer ","iequalitycomparer","Return value: ","Contains returns a bool value type. You can store its result in a bool. You can use the Contains method as an expression.","Bool ","bool","Review: ","The example in the program shows the Contains extension being used on the List type with a case-insensitive search.","Discussion."," System.Linq is included by default in new Console applications in Visual Studio. It will allow you to call a separate Contains generic method on all IEnumerable types. ","Contains ","contains-extension","Warning: ","LINQ extension methods are often slower. They operate on the IEnumerable interface.","IEnumerable ","ienumerable","Internals."," Contains performs a linear search through the elements, starting with the first element, and uses Equals to check each element value. ","Info: ","This is often much slower than a Dictionary. The LINQ method also does a linear search.","Performance."," We benchmark the performance of List Contains and a custom for-loop on a small List. Only a few elements are searched by each method. A custom for-loop was faster. ","Benchmark ","benchmark","Tip: ","Typically writing a for-loop that does a search is faster than using a built-in method.","However: ","This approach creates extra code size, and this extra size may lead to performance decreases in larger programs.","C# program that benchmarks List Contains","\n\nusing System;\nusing System.Collections.Generic;\nusing System.Diagnostics;\n\nclass Program\n{","\n /// <summary>\n /// Custom implementation.\n /// </summary>\n ","static bool ","ContainsLoop","(List<string> list, string value)\n {\n for (int i = 0; i < list.Count; i++)\n {\n if (list[i] == value)\n {\n return true;\n }\n }\n return false;\n }\n\n const int _max = 100000000;\n static void Main()\n {\n List<string> list = new List<string>();\n list.Add(\"one\");\n list.Add(\"two\");\n list.Add(\"three\");\n list.Add(\"four\");\n list.Add(\"five\");\n\n var s1 = Stopwatch.StartNew();\n for (int i = 0; i < _max; i++)\n {\n bool f = ContainsLoop(list, \"four\");\n }\n s1.Stop();\n var s2 = Stopwatch.StartNew();\n for (int i = 0; i < _max; i++)\n {\n bool f = list.Contains(\"four\");\n }\n s2.Stop();\n Console.WriteLine(((double)(s1.Elapsed.TotalMilliseconds * 1000000) /\n _max).ToString(\"0.00 ns\"));\n Console.WriteLine(((double)(s2.Elapsed.TotalMilliseconds * 1000000) /\n _max).ToString(\"0.00 ns\"));\n Console.Read();\n }\n}\n\n","Results","\n\n","19.22 ns"," For-loop, string comparisons [ContainsLoop]\n","54.60 ns"," Contains method [Contains]","A summary."," We used the Contains method on List. We saw how this method differs from the LINQ Contains method. The methods are implemented with a forward linear search. ","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","3679700504","data-ad-format","link","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto"],"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALsAAABECAMAAADuirSUAAAAMFBMVEX////V7/mWn6Gi3/N6enrg4eG75/a3uLjy+v3Iycnp9vuc0eOYxtaQtMD4+Pj5/f5J+Z7pAAAC2UlEQVR4XtXZ646rIBSAUfaF60Xf/22PR+xkpBurHW3x+9mIWaGkhKJOadBaq1vmkf9n78cfkB/ZG9K/hfeN9gKQf+c/audGOwGa1w03stvK7m9kx8pub2TnKrwMqq2+eN6RjLsEzsz64vWeiQjOdQ8z/AK7ruyRzsUPvsAP2aF0cOKR5uDMpXLcTqVj+yrT0niOHXnT7qe4Kk9Jdhlv+RFGWoJr7ELSnIt2OY1Fnom6tssNKSX6nbnOHsCdaleG6CP2AEQUzrVDZYcmJ2g9vGsHIjrNrn9KpUglJz9uFwz6UL1gEN+9tuc0F8+xc2nf77tfSWxY7WxamnO5fKndjOKPUZW/0g5T79iNE+gCwip/mb0AjtoNKIku5fuyh9aBXAy7sisxz636t/Mt7GHOba92RHyyh9K4ww5hzp1tpzmzuWQSTUWsPiuFHXYqwd/siHjcjlSKuGm3zy8vnWEv4Vv2ErbtJfm7+aKdIy3FG9h1Y8US9m8fuA6LI+VHsVe7sswSv6pPu2axnEz/dmW5kQ3Qu31AbuvNQbspvbKvXEfsB/DszU579cyn7Gqw3Aw7tpc0tvF927f1CEuuV7syMeOLs0e39kBTSfLbXu0WHyUqPfNdR3aZYA0txUofwV1kl13H7ax/8IlrGKg6u23XU1yVSlrr0+2soWknM27+v5BrO+9LdrFU2rQzLtso1nYB75/XQ8z5S/YSTnFV3HHg4ozM/E27nLivaq7r0Z7FC5NwC3vjsgI7sheLOEa8MbEd2ZOMz63DR+jIToQiXbbLE5/hSntByHbK0gDZLp+38rwLOIDP2pGo1mOmVe7lMT2TAWN+XcjRnmr75uCwcYMcMyIzYs7x9duDRf4Jc6LSt+ztQEmF1e1tr/Zx886/C7shuaDkoCN7gNaKkXMd2cf2TMpBP3ZJY4JqN5pe7GbmwEoOajsQ7N/MzZuMMQBu18NUmocEda/G1fXtP47JaK+yvhpRAAAAAElFTkSuQmCC)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAG4AAACCAgMAAADasxWRAAAADFBMVEX/2en///+VlZX29vY4hdadAAAASElEQVR4AWPACZj/f0DmjkqOSjKtQgcLyJccZiEE9SOmP8mXHEaBMBoIo4EwGggryJccvvVKKAogTnJUclRyVHLklgmjkqOSAALWyrsxEHLDAAAAAElFTkSuQmCC)","url(data:image/jpeg;base64,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)"]

["url(data:image/png;base64,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)","url(data:image/png;base64,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)","url(data:image/jpeg;base64,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)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL4AAABBCAMAAABYbu5jAAAAMFBMVEX///+1wv+jqv9siv/p6//W3f8zZv9gb//19v9NK/8zAP999//S//8z//8zzP+z6P/0gInFAAABg0lEQVR4XtXXy1ICURAD0H7c96D+/9/KQqkhlEKD0iTrWZzKYtJXbou2s+jvn1Q55f2mfAMOb6Ec5D6+c/ObcvOdm98qN9+5+a1w842b3wo33/6Dv2H22g3zCL+PKF/uSKDsGL8pN9+5+U25+c7Nb5Wb74R8h+ki41eYLja+Qf1k/AL1k/HF4XIg4ytMFxl/X7/z8aF+Ov6A6bqR//FTnswXa2B96LmyPZtfoH4yvsDlwMaHy4GLj/Xz8RXqJ+PD5UDGh+ni448O08XEh+lSrtUVnC6qm+ey/krGx+li4+N0sfHh7Cfj43Sx8bF+Mj5OFxkf67c8frF+jJUovzRIBr/4+kovMb5YPr/OdcrUGL9k8FG/Tw3xxbP55/o1R4hfk/m6IBbii+fyJ/JnjK+5/HWRGuJLfzG+xvh6lX89f8m3GH90ar7Ya/FrkF8y+XNhRpAvlsi3+H8fUxP5A+svYb54Hl8Uy4/zNZEvCvo4XzyRLzrhXg7zNZMvw/o6ptsQpvDnE+wJyVGQ5SG7AAAAAElFTkSuQmCC)","url(data:image/jpeg;base64,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)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANMAAAA8CAMAAADLy3+8AAAAGFBMVEX////++Of/8crj4t+/vr2SkZFWVFT/67CB/ywxAAAEFklEQVR4XtWbYZOzIBCDN9nF/v9//I6FzBVKGaXyOs0XW5H1ntsYRr2zWiAfWSRgJ4W/6TOzK9k1Ah+NiPWzpWbyJVB49EQsni2xZVpBJHHxbCFdzsTHQPhmNifPj0VNkrBwtpBaYVWTJEwhSafSRcIyJOmr2ZxxCZY5T+IUkoQJlyz0noQpJGnYpG+YVvjncUw4bxHYeqgp30ocEK1isqolYIcRc1DMwtyieE1OEB8awEP2IQCwJSJxQ58Mbx7hMSZDhxsiIjwivM9kXMtkfKtzNLvQsQsKUmxZ3p+5mMnYlsG5PGbbAtLTtiUH0rbBelrNZBif0cZQbDlJPDsEANsWY/OBa5hsikkE73vwNJ6NmEy5ZLcw8XiPxbTtMgPiIxMz0e1MY7VMYfCPIWFQInLX6wKwhgnfeIFi2mBIuU0jgaJiFm68nAaeykGe9Bgo7V/MLDKpwd0dZu47E9yZ5buQd9tzWIpIKTaV2WUe4eZaLlT62I0aTreYalQqTNmJmW0Tmz9JYc9tgGVWRPFt5OFdvklblHKZ0ENMKt0RICKJEzcvhAtqR8LriVPeSql8DuA5SYoyLKTklikqQheKSg/89h3Sg0QIyuzPINUv2i0VGLW0dCijNQwo3VW5lPNHKFDpShcgQZNICCqs+WG82UYZB+o2yrL5a1RXpYZDh6hko++R+IdEQBbx94iIik3MsGI2seGlbRBibbN+RIyZMJH/JOEOWKhR3YjQFi2DjhdyFARvhu0VRZzz3hsjlesClkOgExFdj/UtKeu9O9deKqjFl2YEH5KQQo3qR4S26d2CUVu2spe2YhpGhF300Jz0nGJUNn+MCFT9EAP0XeiVvZqVaBwRNn07IyQx7QgOECV027xqGMUiBmQ2DeeNHYmIMzdpB3zXMhkAZXUbEW+M6TUSgCoikDejiLCKsxKLTrpPSG2fTBCK6BKDUPea/ijhgTrhq6trS1qQxaRDxfRB4DfvAUikUl9nfLLsO/WhjgrkHXkUQLWKJS3d6TkuWVaookqe+DmPI+lZxBaRCpLO7FqEm8hG/LEmALIoCk0ZhqDUkr9DdKqheObBUSvC8m81JVkklXTam4U2k4HneE5BENlHOrw4K+RZf2HSISVfx8JR813x2IckpPE9obv39hZPX/QmnN0unRQbnayQtshmv4bpbEYOqmSaiUaHluVrmDDwHSstfO+u1aGJCGKOaYDUjC1lcmihq2piJiPYQfr/TEp4f7fzuAM45DzYDUzeRcrC2bN0kO5gMo+UAh8K4vOlf84x65nO1CN59BZqcMy9TJx/d/44o7kX9yuRaL/DhMdkm36fCXYX0zIo2m1Mq6Bo9zEtgqLdx7QozmG/yGTgqEk/xzSmotm9TCv+ZP5nmSSg+teGH9U/EvuFGjU3drsAAAAASUVORK5CYII=)"]