TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

<< Back to C-SHARP

C# Skip and SkipWhile Examples

Invoke Skip and SkipWhile to return elements only after a certain number are encountered.
Skip. This is an extension method. It returns only the elements following a certain number of initial elements that must be ignored.
Skip namespace. It is found in the System.Linq namespace. It is useful in programs that selectively process elements. SkipWhile is also available.LINQTake, TakeWhile
First example. Include the System.Linq namespace. This provides the extension methods that act upon the IEnumerable implementations (arrays and Lists).ExtensionIEnumerable

Step 1: In this example, the integer array is allocated and immediately filled with six 32-bit signed integers.

Step 2: The argument to Skip is the int 2. This will pass over the first two elements and only return those that follow.

Step 3: The argument here is 4. The second loop in the example repeats this procedure but for 4 elements.

Info: No action is taken until you loop over the resulting variable. Skip() takes effect when the foreach queries for results.

Foreach
C# program that uses Skip method from LINQ using System; using System.Linq; class Program { static void Main() { // Step 1: create array for demonstration. int[] array = { 1, 3, 5, 7, 9, 11 }; // Step 2: get collection of all elements except first two. var items1 = array.Skip(2); foreach (var value in items1) { Console.WriteLine("SKIP 2: {0}", value); } // Step 3: call Skip again but skip the first 4 elements. var items2 = array.Skip(4); foreach (var value in items2) { Console.WriteLine("SKIP 4: {0}", value); } } } Output SKIP 2: 5 SKIP 2: 7 SKIP 2: 9 SKIP 2: 11 SKIP 4: 9 SKIP 4: 11
SkipWhile. This method skips over elements matching a condition. With SkipWhile you need to specify a Func condition to skip over values with.

Start: We declare an array that has several values in it. The first 3 elements are less than 10.

And: We call SkipWhile with a Func that returns true for elements less than 10. The first 3 elements in the array are skipped.

C# program that shows SkipWhile method using System; using System.Linq; class Program { static void Main() { int[] array = { 1, 3, 5, 10, 20 }; var result = array.SkipWhile(element => element < 10); foreach (int value in result) { Console.WriteLine(value); } } } Output 10 20
Practical uses. In your program, you might have some reason to remove elements at the start of a collection that begin with a certain letter or have a property set to a certain value.

Tip: You could use SkipWhile. Then you could call ToArray to ToList to convert the IEnumerable back into an array or List.

ToArrayToListArrayList
Discussion. The Skip extension method is a generic method, which means it requires a type parameter. The C# compiler can infer the correct type parameter.Generic Class, Method

Info: The Skip extension method internally allocates a new class that is compiler-generated and stores the state of the Skip operation.

Tip: This indicates that using a for-loop and starting at the desired index will be much faster.

For

Tip 2: Often you would use Skip on a collection that cannot be accessed by specific indexes.

Skip and Take. You can also use the Skip extension method in query method chains. Often you may want to combine it with Take, either before the Skip or after.

Note: The Take extension method specifies that you only want to access the following several elements.

So: If you want the middle elements in a sequence, you can Skip over the first several and then Take the part you want.

A summary. Skip serves to "pass over" several elements in any class that implements the IEnumerable interface. It is most useful on more complex collections or queries.
© TheDeveloperBlog.com
The Dev Codes

Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf