进行一些计算后我必须返回一个数组。但我不知道怎么做而不在方法中创建一个数组。
int[] arr = numbers(number1, number2); // this is in the main function
这是我创建的方法
static int[] numbers(int number1, int number2)
{
for(int i=number1; i<=number2; i++)
{
if(i%2==1)
{
return [i++]=i;
}
}
return 0;
}
这是我到目前为止所做的,但它有编译时错误。 如果i中的值对于main方法中的数组是奇数,我想要做的就是返回。
请注意,我不想在数字方法中创建另一个数组。
原始问题是关于在给定范围内找到奇数。 Number1和number2是范围限制。方法声明没有变化。内容可以按我的意愿创建。最后它应该返回方法的返回类型。整数数组将捕获返回的东西。这就是所有,最后打印数组
答案 0 :(得分:0)
static IEnumerable<int> Number(int number1, int number2){
for(int i=number1; i<=number2; i++) {
if(i%2==1) {
yield return i;
}
}
}
或
static int[] Number(int number1, int number2){
var x = new int[number2];
int y = 0;
for(int i=number1; i<=number2; i++) {
if(i%2==1) {
x[y] = i;
y++;
}
}
return x;
}
这是您正在寻找的而不创建数组
称之为:
var something = Number(1,5).ToArray();