2017-09-28 14 views
0

クラスに文字列配列を作成するにはどうすればよいですか?Unityの配列に値を追加または追加する方法C#

また、その配列に値を追加または追加する必要があります。

Firebaseリアルタイムデータベースを使用してデータベースに配列値を格納できます。

特定のキーではありません。

私はとして配列を宣言:その配列がためのループにuseedと私は自分の価値を追加しようとする上記のスクリプトでは

public void Click() 
{ 
    _uid = int.Parse(_uidText.text); 

    for(int i = 0; i < uiddata.Length;i++) 
    { 
     uiddata.Add(_uid); 

     //_score = int.Parse(_scoreText.text); 

     _uidRef.SetValueAsync(_uid); 
     //_scoreRef.SetValueAsync(_score); 

     _uidRef.RunTransaction(data => 
     { 
      data.Value =_uid ; 
      return TransactionResult.Success(data); 
     }).ContinueWith(task => 
     { 
      if (task.Exception != null) 
       Debug.Log(task.Exception.ToString()); 
     }); 
    } 
} 

として、配列に要素を追加され

private string[] uiddata; 

あなたがC#を使用しているので

error CS1061: Type string[] does not contain a definition for Add and no extension method Add of type string[] could be found. Are you missing an assembly reference?

答えて

3

は、あなたがこれを確認する必要があります:配列が、このエラーを与える

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/arrays/

まさにこの部分:

The number of dimensions and the length of each dimension are established when the array instance is created. These values can't be changed during the lifetime of the instance.

だから、あなたが例えば5、初めにサイズを定義することができ、その後、あなたがフォローのような配列に値を追加することができます意味:

String[] numbers = new String[5]; 
numbers[0] = "hello1"; 
numbers[1] = "hello2"; 
numbers[2] = "hello3"; 
numbers[3] = "hello4"; 
numbers[4] = "hello5"; 

または

String[] words = new String[] {"hello1", "hello2", "hello3", "hello4", "hello5" }; 

しかし、あなたは、この配列に余分な要素を追加しようとすると、例外

numbers[5] = 111111; //Exception here 

を持つことになります。しかし、あなたが値を追加が必要な場合、あなたはcollections代わりの配列を使用することができます。たとえば、リスト:

List<String> myList = new List<String>(); 
myList.Add("Value1"); 
myList.Add("Value2"); 
... 
+0

が、どのように私はあなたが、ユニティエンジンは、私はあなたのケースで見るように、それは、C#で、他のプログラミング言語を使用することはできません – shivani

+2

団結して、配列に値を追加することができ、私はあなたにそれを説明するように不可能である。あなたはリストを使う必要があります。私がこの例で言うようにArrayListを使用しようとすると、必要に応じて要素を追加するためにメソッド.Add( "value")を使用することができます。 –

+0

私の答えの最後の部分を確認し、uiddataをArrayとしてではなく、Arrayとして宣言してください。 –

関連する問題