C#:我希望单词的每个字母都以新行开头
C#: I want every letter of a word to begin in a new line
using System;
class HelloCSharp
{
static void Main()
{
Console.WriteLine("Hello C#");
}
}
我希望输出为:
H
e
l
l
o
C
#
但每个字母都应另起一行
我是新来的,但我一直在寻找,但找不到答案。应该是 Environment.NewLine
吗?
给你:
string str = "Hello C#"
char[] arr = str.ToCharArray();
foreach (char c in arr)
{
Console.WriteLine(c);
}
编写一个函数来循环遍历一个字符串。像这样:
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));
通过Join方法实现:
var text = "Hello C#".ToCharArray();
var textInLines = string.Join("\n", text);
Console.WriteLine(textInLines);
谢谢大家,但您提供的所有选项看起来都有些复杂。这不是更简单吗:
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, "(.)", "\n", RegexOptions.Singleline);
Console.Write(str2);
此正则表达式搜索任何一个字符 (.)
并将其替换为找到的字符加上 \n
(\n
)
(不,拜托...这是错误的...除非您真的很绝望,否则您不应该在 C# 中使用正则表达式)。
string Hello = "Hello C#";
foreach(char i in Hello)
{
Console.WriteLine(i);
}
更简单的解决方案。
using System;
class HelloCSharp
{
static void Main()
{
Console.WriteLine("Hello C#");
}
}
我希望输出为:
H
e
l
l
o
C
#
但每个字母都应另起一行
我是新来的,但我一直在寻找,但找不到答案。应该是 Environment.NewLine
吗?
给你:
string str = "Hello C#"
char[] arr = str.ToCharArray();
foreach (char c in arr)
{
Console.WriteLine(c);
}
编写一个函数来循环遍历一个字符串。像这样:
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));
通过Join方法实现:
var text = "Hello C#".ToCharArray();
var textInLines = string.Join("\n", text);
Console.WriteLine(textInLines);
谢谢大家,但您提供的所有选项看起来都有些复杂。这不是更简单吗:
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, "(.)", "\n", RegexOptions.Singleline);
Console.Write(str2);
此正则表达式搜索任何一个字符 (.)
并将其替换为找到的字符加上 \n
(\n
)
(不,拜托...这是错误的...除非您真的很绝望,否则您不应该在 C# 中使用正则表达式)。
string Hello = "Hello C#";
foreach(char i in Hello)
{
Console.WriteLine(i);
}
更简单的解决方案。