如何建立一个最小最大值,从一个字符数组到相同的字符数组输出
本文关键字:字符 一个 数组 输出 何建立 建立 最大值 | 更新日期: 2023-09-27 18:08:04
我的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication7
{
class Program
{
#region//Main() Put everything thats finished in here to output it to Console Apllication.
static void Main(string[] args)
{
FirstPart();
}
#endregion
#region
static void FirstPart() // don't know what else to call this.
{
//Console.WriteLine(numS());// commented out
这就是我的问题所在。
string pi = Console.ReadLine();
PItoArray = pi.ToCharArray(pi.Min(),pi.Max());
Console.WriteLine(PItoArray);
我的问题结束了。
}
#endregion
#region //numS() gets number of char in player input.
//static int numS()
//{
// int num = PlayerInput().Length;
// return num;
//}
#endregion
#region//PlayerInput() Gets whatever player writes in console apllication
static string PlayerInput()
{
string S = Console.ReadLine();
return S;
}
#endregion
static char[] PItoArray;
}
}
现在这些是细节(如果你需要更多,请随时回复):
我尝试用num.max代替pi。最大,我个人倾向于拆分所有内容,但在这两种情况下,我得到一个超出范围的异常,其中索引是负的或大于集合我认为它应该是这样工作的
设置变量
然后将每个字符分割成字符数组
然后使用pi来确定最小值和最大值。
那么它应该完全按照它写的方式写出来。前女友。
现在我有三个问题:
我的逻辑正确吗?如果没有,请原谅,我已经18岁了,我主要喜欢探索我能做什么和不能做什么。
我如何使用字符数组的最小值和最大值ex.如果我写Hello,我可以使用
char[] Var = pi.ToCharArray(0,5);
ConsoleWriteLine (Var);
输出将是"Hello",对吗?但是如果我写"Hello World"我如何得到字符串中所有的char's而不管字符串中char's的数量,或者更好的方式是我如何使用字符串中char's的数量来获得最小值&最大值ToCharArray(min,max),所以如果我写一个10个字母的句子或100个字母的句子,我永远不会得到一个超出范围的异常?
- 有办法做到这一点在一个简单的1-5行代码?我不懒,但更简单的是更容易,所以为什么不使用它。
如果你想将字符串转换为大小完全相同的字符数组,你可以不带任何参数调用pi.ToCharArray()
,它将自动创建一个包含原始字符串中完全相同字符数的字符数组。
还请注意,调用pi.Max()
将返回给您的是根据ASCII表具有最高char代码的字符,而不是字符串大小,正如您所假设的那样。("Hello, world".Max()
返回字符'r'
,其代码为114 -字符串中最高的字符代码)。
你的最大值不能大于pi。长度,这是字符串长度。的第一个参数。最小值是字符串的起始索引。你可以选择最小值为0到最大值之间的任意值。第二个参数。ToCharArray应该是你想要的charArray的长度,它可以是0到Max - Min之间的任何值。你也可以阅读这个文档:字符串。ToCharArray(int32 start, int32 length)
大家好,再次感谢你们的快速回答,我的做法有点不同(尽管我很幸运,你们两个中的一个说的正是这样),以下是我的想法:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SearchCharInString
{
class Program
{
#region//Main() Put everything thats finished in here to output it to Console Apllication.
static void Main(string[] args)
{
FirstPart();
}
#endregion
#region // HERE IS WHERE CHANGED HAPPENED!!
static void FirstPart()
{
Console.WriteLine(PItoArray());
}
#endregion
#region//PlayerInput() Gets whatever player writes in console apllication
static string PlayerInput()
{
string S = Console.ReadLine();
return S;
}
#endregion
This Is What I Changed
#region // HERE IS WHERE CHANGED HAPPENED!!
static char[]PItoArray()
{
string PI = PlayerInput();
int piLength = PI.Length;
return PI.ToCharArray(0,piLength);
}
#endregion
}
}
我就是这么称呼它的
#region // HERE IS WHERE CHANGED HAPPENED!!
static void FirstPart()
{
Console.WriteLine(PItoArray());
}
#endregion
我会认出你的答案,因为这有助于我的研究。再次感谢各位。我相信现在我应该能够搜索我的字符,寻找某些东西,甚至可以让它从if语句中找出某些单词,使用字母表索引到这个代码。