複数のエンティティを変数として受け入れ、それを配列に変更することは可能です!たとえば、ユーザーは複数の名前を入力しますが、入力する必要のある名前の数は定義されていません。名前を受け取ったときに配列に変更することは可能ですか?C#で配列を使うことに戸惑う
ありがとうございます!
複数のエンティティを変数として受け入れ、それを配列に変更することは可能です!たとえば、ユーザーは複数の名前を入力しますが、入力する必要のある名前の数は定義されていません。名前を受け取ったときに配列に変更することは可能ですか?C#で配列を使うことに戸惑う
ありがとうございます!
.NET配列には固定長があります。リストに要素を動的に追加したい場合は、List<T>
クラスを使用できます。例えば
:
List<string> names = new List<string>();
今あなたがリストに要素の追加を開始できます。
names.Add("foo");
names.Add("bar");
names.Add("baz");
をそして、あなたはまた、ToArray()
メソッドを使用して、対応する固定長配列を得ることができます:
string[] namesArray = names.ToArray();
本当に本当に配列が必要な場合は、ListのToArray()メソッドを使用します。 – Frank
ありがとうダーリン、それは非常に興味深いアプローチです! – 0bserver07
パーティーに遅れていますが、 'ToArray()'は 'List'のメソッドではなく、' List
ユーザーが複数の名前を入力する場合は、配列の代わりに文字列のリストを作成します。
私もそれについて考えましたが、この私の教授は、彼がカバーしていないものを使いたいとは思いません!少なくとも彼は他の生徒のスキルについて公平になりたい!再度、感謝します! – 0bserver07
あなたが探しているものはparam object []
だと思います。未定義の数値や関数のパラメータに使用されます。あなたの関数は次のように行くだろう:
public static void SayHello(params string[] names){
foreach(var name in names){
Console.WriteLine("Hello " + name);
}
}
そして、あなたはこのようにそれを呼び出すことができます。
SayHello("Bob", "Bill", "Susan");
SayHello("Jenny");
それはまさに私が意味するものです!ありがとう! – 0bserver07
@ Soap141、よかったら、あなたの答えとしてマークしてください。 – Daryl
どのようにユーザーが名前に入っていますか? –
「複数のエントリーを変数として受け入れる」とはどういう意味ですか?あなたのデータ入力はダイナミックな入力フィールドを表示する必要があるのですか、あるフィールドの任意の入力を複数の変数に分割したいのですか(カンマで区切るか他のものなど)?結局のところ、結果はリストまたは固定長配列(あなたが持っている要素の数が分かれば作成されます)に格納することができます。 –
@MiguelAngeloたとえば、プロンプトで、アプリには好きな曲の名前を入力するように求められます。 – 0bserver07