C# 初级-将str保存到数组中
嘿,伙计们,我真的需要你们的帮助 我尝试了一段时间来理解数组是如何工作的,并使用for循环来搜索数组内部,这似乎是可行的 我的第一个问题是,如何在这个程序的while循环中向数组添加内容 功能如下所示: 将字符串添加到数组中, 打印出整个阵列, 在数组内部搜索 感谢您的帮助C# 初级-将str保存到数组中,c#,arrays,string,C#,Arrays,String,嘿,伙计们,我真的需要你们的帮助 我尝试了一段时间来理解数组是如何工作的,并使用for循环来搜索数组内部,这似乎是可行的 我的第一个问题是,如何在这个程序的while循环中向数组添加内容 功能如下所示: 将字符串添加到数组中, 打印出整个阵列, 在数组内部搜索 感谢您的帮助 static void Main(string[] args) { bool isRunning = true; int menyVal; int Allitem =
static void Main(string[] args)
{
bool isRunning = true;
int menyVal;
int Allitem = 5;
string[] rygga = new string[Allitem];
rygga[0] = "1";
rygga[1] = "2";
rygga[2] = "3";
rygga[3] = "";
rygga[4] = "";
while (isRunning)
{
Console.WriteLine("\n\tVälkommen till ryggsäcken! vänligen välj ett av dessa val med en siffra.");
Console.WriteLine("\t[1]Lägg till föremål / add item");
Console.WriteLine("\t[2]Skriv ut innehållet/ print out all");
Console.WriteLine("\t[3]Sök i ryggsäcken/ search in the array");
Console.Write("\tVälj en siffra: / choose a number ");
int menyval = Convert.ToInt32(Int32.TryParse(Console.ReadLine(), out menyVal));
//Använda menyvalet med switch
switch (menyVal)
{
case 1:
{
//Spara användarens föremål
Console.Write("skriv vad föremålet heter för att spara det i ryggsäcken: ");
break;
}
case 2:
{
//visa vad som ligger sparat i ryggsäcken
break;
}
case 3:
{
Console.WriteLine("Skriv in ett sökord : ");
string sökOrd = Console.ReadLine();
try
{
for (int i = 0; i < rygga.Length; i++)
{
if (rygga[i] == sökOrd)
Console.WriteLine(rygga[i]);
}
Console.ReadLine();
}
catch
{
Console.WriteLine("Inget hittades! ");
}
break;
}
default:
{
// med uppmaningen att skriva 0 - 4
Console.WriteLine("Du måste välja en siffra mellan 0-4!");
break;
}
}
}
}
static void Main(字符串[]args)
{
bool isRunning=true;
国际货币基金组织;
int Allitem=5;
字符串[]rygga=新字符串[Allitem];
rygga[0]=“1”;
rygga[1]=“2”;
rygga[2]=“3”;
rygga[3]=“”;
rygga[4]=“”;
同时(正在运行)
{
Console.WriteLine(“\n\tVälkommen till ryggsäcken!vänligen välj ett av dessa val men siffra.”);
Console.WriteLine(“\t[1]Lägg直到föremåL/添加项”);
Console.WriteLine(“\t[2]Skriv ut innehållet/print out all”);
Console.WriteLine(\t[3]Sök i ryggsäcken/search in the array”);
Console.Write(“\tVälj en siffra:/choose a number”);
int menyval=Convert.ToInt32(Int32.TryParse(Console.ReadLine(),out menyval));
//Använda menyvalet med开关
开关(menyVal)
{
案例1:
{
//Spara användarens föremål
Console.Write(“skriv vad föremålet heter för att spara det i ryggsäcken:”);
打破
}
案例2:
{
//visa vad som ligger sparat i ryggsäcken
打破
}
案例3:
{
Console.WriteLine(“Skriv in ett sökord:”);
字符串sökOrd=Console.ReadLine();
尝试
{
for(int i=0;i
您的数组只能包含5个(Allitem)条目。您可以使用以下命令搜索数组中的下一个空条目:
int emptyindex = -1;
foreach(string s in rygga)
{
if(s == "")
{
emptyIndex = Array.IndexOf(rygga,s);
break;
}
}
if(emptyindex >= 0)
{
rygga[emptyindex] = //UserInput;
}
else
{
//Inform that there is no more space to fill
//Eventually you can overwrite index 0 then. Depends on what suits you better
}
如果您真的需要添加未知次数,那么数组就不是最好的选择。更好地使用
List<string> rygga = new List<string>();
rygga.Add(//UserInput);
编辑:
在这两种情况下(列表和数组),您只需执行以下操作:
foreach(string s in rygga)
{
Console.WriteLine(s);
}
“我怎样才能在while中向数组中添加一些内容”那么,你尝试了什么?为什么需要while循环而不是for循环(因为数组的大小是已知的)?您可以通过索引将字符串分配给
string[]
:rygga[0]=“foo”代码>。但是你已经这样做了,所以问题很不清楚。数组实际上是一个固定大小的东西-因此,你有5个[3]和[4]为空,你已经展示了你知道如何将东西分配给数组,所以你可以这样做,如果你现在需要一个6大数组,列表将是一个更好的选择,callI会继续给你一个非常好的建议。不要用母语编写代码。在这种情况下,瑞典人。改用英语。为了你自己和别人。它使它更具语义和友好性。您不能向数组中添加内容,因为数组的大小是固定的。但是,您可以在数组中的给定位置更改elenet,甚至可以替换该项。如果您确实想添加或删除元素,最好使用列表
。它还提供基于索引的访问(例如,rygga[0]
),但允许动态调整内部数据结构的大小。如果我感到困惑,请原谅,我真的在尽可能地保持一致性。我希望用户能够在数组中保存一些内容,对于这个which语句中的第一种情况,我不知道应该使用什么来将字符串保存到数组中。我还想知道如何打印出阵列中当前保存的所有内容
foreach(string s in rygga)
{
Console.WriteLine(s);
}