我正在尝试编写一个用“EVEN”替换偶数的程序。到目前为止,我有:
List<int> num = new List<int>();
for (int num1 = 0; num < 101; num++)
{
num.add(num1)
}
foreach(int n in num1)
{
if (n/3)
{
num.Replace("EVEN")
}
}
这是关闭还是我远离?
答案 0 :(得分:4)
var list = new List<string>();
for (int i = 0; i < 101; i++)
{
string value = (i % 2 == 0) ? "EVEN" : i.ToString();
list.Add(value);
}
答案 1 :(得分:2)
在一行中:
var list = Enumerable.Range(1, 100).Select(i => (i % 2 == 0) ? "EVEN" : i.ToString()).ToList();
答案 2 :(得分:1)
不确定你为什么要这样做,但这应该有用..:
var num = new List<string>();
for (int n = 0; n < 101; n++)
{
num.Add(n % 2 == 0 ? "EVEN" : n.ToString());
}
答案 3 :(得分:1)
已经提供了用于构建字符串列表的解决方案,其中列表的每个元素如果是奇数则是数字,如果是偶数则是“偶数”。
如果由于某种原因,您确实需要获取int
的现有列表并执行此类替换,请确保您了解一个基本问题:您无法插入string
“偶然“进入一个强类型的int
列表。
如果您确实以List<int>
开头,则必须对其进行迭代并将结果插入到新的List<string>
中,根据@CMP或@Can将偶数替换为“偶数” Gencer的答案。
答案 4 :(得分:1)
Enumerable.Range(1, 100)
.Select(n => (n % 2) == 0 ? "EVEN" : n.ToString())
.ToList();
答案 5 :(得分:0)
如果你想用“偶数”代替,数字列表可能应该是字符串。
List<string> numbers = new List<string>();
numbers.Add("1");
numbers.Add("2");
numbers.Add("3");
for (int i = 0; i < numbers.Count; i++)
{
int n = 0;
bool success = int.TryParse(numbers[i], out n);
if (success && n % 2 == 0)
{
numbers[i] = "Even";
}
}
//Output Test Results
foreach (string number in numbers)
{
Console.WriteLine(number);
}