2016-11-09 2 views
-4

Это Excersice из школы я получил, но Im немного застрял:/Concat 2 Массивы и результат в одном C#

«Написать метод Concat, он будет принимать два массива целых чисел в качестве аргументов и возвращать массив из целых чисел. Возвращаемый массив должен быть resultetet слиянием как входных массивов . "

Я только получил это далеко И я не знаю, как сделать «окончание» или что еще добавить. Как вы, наверное, догадались, что это новое. Я пытался VariUs вещи, но я не могу получить повесить его:/

public int Concat() 
    { 
     int[] x = new int[] { 1, 2, 3 }; 
     int[] y = new int[] { 4, 5, 6 }; 

     int[] z = x.Concat(y).ToArray(); 


    } 
+2

Вы знаете, как передать аргументы методу? и что такое тип возвращаемого метода? –

+0

Все, что вы сделали, это использовать существующий метод для этого. Я сомневаюсь, что это разрешенное решение. Так напишите свое. Вам необходимо создать новый массив с длиной x.Length + y.Length и загрузить все поля соответственно. Вы должны проявить по крайней мере некоторые усилия. – CSharpie

+3

Это не домашнее задание. – CSharpie

ответ

0

Попробуйте

var z = new int[x.Length + y.Length]; 
x.CopyTo(z, 0); 
y.CopyTo(z, x.Length); 
+0

Не очень хороший ответ для тех, кто застрял в передаче аргументов. – Poody

+1

Также это использует CopyTo, и я ставлю, что Op просит его домашнюю работу здесь. Учитель, вероятно, хочет найти решение, использующее for-loops. – CSharpie

+1

Это выглядит знакомо ... http: //stackoverflow.com/questions/1547252/how-do-i-concatenate-two-arrays-in-c – sr28

0

Вы должны пройти два аргумента метода, а затем CONCAT этих массивов, как, например, @Tony Vincent:

public int[] Concat(int x, int[] y) 
{ 
    var z = new int[x.Length + y.Length]; 
    x.CopyTo(z, 0); 
    y.CopyTo(z, x.Length); 

    return z; 
} 
0

Вам необходимо передать два параметра, из которых вы вызвали функцию. Я предоставляю образец ниже.

class Program 
{ 
    public int[] Concat(int[] x, int[] y) 
    { 
     int[] z = x.Concat(y).ToArray(); 
     return z; 

    } 
    static void Main(string[] args) 
    { 
     Program program = new Program(); 
     int[] x = new int[] { 1, 2, 3 }; 
     int[] y = new int[] { 4, 5, 6 }; 
     int[] z = program.Concat(x, y); 
     Console.ReadLine(); 
    } 
} 

здесь мы прошли х и у к методу Concat и он возвращает объединенный массив и будет храниться в z целочисленном массиве основного метода.