当前位置:  开发笔记 > 编程语言 > 正文

使用C#中的填充填充数组

如何解决《使用C#中的填充填充数组》经验,为你挑选了1个好方法。

我希望用户首先输入代码(例如fkuk3463kj).数组限制为20.其余的必须填充填充符.客户将使用哪种填充物(例如#,t,z,7,_,0)是他自己的选择,他将要求在代码问题之后的开头定义它.

(提示:之后(或如果可能的话)我必须决定(完成顾客的愿望)填料是否必须在开头或结尾.(例如:fkuk3463kj ######### #或########## fkuk3463kj)

现在我不知道如何实现这一点.我知道,这并不困难,但我不明白!我所有的尝试都不是真的成功.

有人能帮助我吗?这将是完美的!而且很多提前!

Console.WriteLine("Please type in your company number!");
string companyNr = Console.ReadLine();
string[] CNr = new string[companyNr.Length];
Console.WriteLine("Type a filler");
string filler= Convert.ToString(Console.ReadLine());
string[] fill = new string[filler.Length];

.
.
.
.
.

(请原谅我的英文...)



1> Dmitry Byche..:

据我所见,你正在与string:

 // Trim: let's trim off leading and trailing spaces: "  abc " -> "abc"
 string companyNr = Console.ReadLine().Trim();

你想要的Pad一些char长度length(20在你的情况下):

 int length = 20;

 string filler = Console.ReadLine().Trim();
 // padding character: either provided by user or default one (#) 
 char pad = string.IsNullOrEmpty(filler) ? '#' : filler[0];

 // shall we pad left: "abc" -> "##abc" or right: "abc" -> "abc##"
 // I have to decide (to complete the wish of customer) 
 //TODO: whether the filler has to be at the beginning or at the end
 bool leftPad = true;

 string result = leftPad
   ? companyNr.PadLeft(length, pad) 
   : companyNr.PadRight(length, pad);

 // in case you want a char array
 char[] array = result.ToCharArray();
 // in case you want a string array
 string[] strArray = result.Select(c => c.ToString()).ToArray();

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有