How to slice an array of ints in C#

8 Answers

0 votes
using System;
using System.Linq;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = arr.Take(3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
    }
}

/*
run:

1
2
3

*/

 



answered Jan 21, 2017 by avibootz
0 votes
using System;
using System.Linq;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = arr.Skip(2).Take(3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
    }
}

/*
run:

3
4
5

*/

 



answered Jan 21, 2017 by avibootz
0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = new ArraySegment<int>(arr, 0, 3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
    }
}

/*
run:

1
2
3

*/

 



answered Jan 21, 2017 by avibootz
0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = new ArraySegment<int>(arr, 2, 3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
    }
}

/*
run:

3
4
5

*/

 



answered Jan 21, 2017 by avibootz
0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = Slice(arr, 0, 3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
        static int[] Slice(int[] source, int startindex, int length)
        {
            int[] dest = new int[length];

            Array.Copy(source, startindex, dest, 0, length);

            return dest;
        }
    }
}

/*
run:

1
2
3

*/

 



answered Jan 21, 2017 by avibootz
0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = Slice(arr, 2, 3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
        static int[] Slice(int[] source, int startindex, int length)
        {
            int[] dest = new int[length];

            Array.Copy(source, startindex, dest, 0, length);

            return dest;
        }
    }
}

/*
run:

3
4
5

*/

 



answered Jan 21, 2017 by avibootz
0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = Slice(arr, 0, 3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
        static int[] Slice(int[] source, int startindex, int length)
        {
            int[] dest = new int[length];

            Buffer.BlockCopy(source, startindex * sizeof(int), dest, 0, length * sizeof(int));

            return dest;
        }
    }
}

/*
run:

1
2
3

*/

 



answered Jan 21, 2017 by avibootz
0 votes
using System;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            var slice = Slice(arr, 2, 3);

            foreach (int n in slice)
                Console.WriteLine(n);
        }
        static int[] Slice(int[] source, int startindex, int length)
        {
            int[] dest = new int[length];

            Buffer.BlockCopy(source, startindex * sizeof(int), dest, 0, length * sizeof(int));

            return dest;
        }
    }
}

/*
run:

3
4
5

*/

 



answered Jan 21, 2017 by avibootz

Related questions

1 answer 217 views
1 answer 187 views
2 answers 230 views
2 answers 228 views
4 answers 325 views
...