用C#中的PadLeft和PadRight打印一个倒三角形

上大学的时候,有打印三角形这道题,当时用一堆循环实现。如果用C#中的PadLeft和PadRight可以轻松实现这个功能。

PadLeft和PadRight简介

    PadLeft的官方定义是返回一个指定长度的新字符串,其中在当前字符串的开头填充空格或指定的 Unicode 字符。有两个方法重载.

重载1:

//PadLeft(Int32)//返回一个新字符串,该字符串通过在此实例中的字符左侧填充//空格来达到指定的总长度,从而实现右对齐。string str="*******";;Console.WriteLine(str.PadLeft(10));//输出   *******

重载2:​​​​​​​

//PadLeft(Int32, Char)//返回一个新字符串,该字符串通过在此实例中的字符左侧填充指定的 Unicode //字符来达到指定的总长度,从而使这些字符右对齐。string str="*******";;Console.WriteLine(str.PadLeft(10,'.'));//输出...*******

PadRight和PadLeft相反,重载也一样,这里就不多说了。

实现倒三角形:

直接上代码​​​​​​​

      for (int i = 6; i >=1; i--)      {          string strs=string.Empty.PadLeft(i,'*') ;          Console.WriteLine(strs);      }

展示结果为6层的倒三角形:

用C#中的PadLeft和PadRight打印一个倒三角形

是不是很简单,其实也可以实现等腰倒三角形,原理是把left和right合并起来,再处理一下个数,就是个等边三角形了,感兴趣的伙伴可以尝试一下。

基础面试题也可能考察PadLeft和PadRight,主要是了解对C#语法的熟悉度。