2016-11-09 4 views
-4

これは私が得た学校からExcersiceが、イム少し立ち往生:/連結方式の2つの配列とは、1つのC#になり

は「メソッドConcatを書く、それは引数として整数の二つの配列を取ると に配列を返します返される配列は、 入力配列の両方をマージする結果セットでなければなりません。

私はこれを遠くに持っていました。そして、私は "エンディング"や何を追加するかを知りません。あなたはおそらく私は新しいと思います。私は、バリウスの事を試してみましたが、私はそれのこつを取得カント:/

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の新しいArrayを作成し、それに応じてすべてのフィールドをロードする必要があります。 少なくとも少しは努力してください。 – 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

をお試しください@トニーヴィンセントの言及:

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

関数を呼び出した場所から2つのパラメータを渡す必要があります。私は下のサンプルを提供しています。ここ

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メソッドにxとyに合格している、それがマージされた配列を返しますし、mainメソッドのz int配列に格納されます。

関連する問題