c#:我希望一个单词的每个字母都在新的行中开始

本文关键字:开始 一个 单词 我希望 | 更新日期: 2023-09-27 18:05:09

using System;
class HelloCSharp
{
     static void Main()
     {
         Console.WriteLine("Hello C#");
     }
}

我希望输出是:

H
e
l
l
o 
C
#

但是每个字母应该在新行开始

我是新人,我知道,但我一直在寻找,找不到答案。应该是Environment.NewLine吗?

c#:我希望一个单词的每个字母都在新的行中开始

给你:

string str = "Hello C#"
char[] arr = str.ToCharArray();
foreach (char c in arr)
{
    Console.WriteLine(c);
}

通过Join方法实现:

var text = "Hello C#".ToCharArray();
var textInLines = string.Join("'n", text);
Console.WriteLine(textInLines);

写一个遍历字符串的函数。像这样:

void loopThroughString(string loopString)
{
    foreach (char c in loopString)
    {
        Console.WriteLine(c);
    }
}

现在你可以调用这个函数:

loopThroughString("Hello c#");

编辑

的,如果你喜欢linq,你可以把字符串变成一个单字符字符串的列表,并通过在每个字符之间添加新行来合并它,然后在控制台上打印

string myString = "Hello c#";
List<string> characterList = myString.Select(c => c.ToString()).ToList();
Console.WriteLine(string.Join("'n", characterList));

谢谢你,但你给的所有选项看起来有点复杂。这不是更容易吗?

const string world = "Hello World!";
 for ( int i = 0; i < world.Length; i++)
    {
        Console.WriteLine(world[i]);
    }

我只是问,因为我刚刚开始学习,是不是最有效和最快的方法来编写程序是最好的?我知道有很多方法可以让事情成功。

真正的男人只使用正则表达式,一切!: -)

string str = "Hello'nC#";
string str2 = Regex.Replace(str, "(.)", "$1'n", RegexOptions.Singleline);
Console.Write(str2);

此正则表达式搜索任意一个字符(.),并将其替换为找到的字符加上'n ($1'n)

(不,请…这是错误的……你不应该在c#中使用正则表达式,除非你真的很绝望)。