你好,我想做这个程序,但我不知道怎么做。这是蟒蛇:
num = 7
for i in range(1,num+1):
numbers = []
numbers.append(i)
for x in numbers:
print(x,end = " ")
这里是java中的代码,但它对我不起作用
int num = 5;
for(int i = 0; i < num; i++) {
int array[] = {};
array.append[i]
如您所见,我无法像使用 python 那样填充该数组。
可能是这样的,首先
numbers
根据变量调整数组的大小num
并将值添加到数组numbers
中,然后打印存储在数组中的值:发生的事情是 python 与列表一起工作,所以没有必要输入大小,在 java 中应该是这样的
或者另一种解决方案可能是这样,如果您想使用数组而不是列表:
您可以像往常一样在 java 中使用两个 for 循环:
如果您想使用 Java 8 以另一种方式执行此操作,可以通过以下方式执行此操作:
这是示例,因此您可以在线运行它。
有五件事,首先你需要关闭一个大括号(
}
),第二个是这对你不起作用的原因:这是因为您在循环中创建数组,然后它被销毁,发生的是您的数组,当在for中创建时,将仅存在于 for 中。
第三件事是,请记住,
python
事情的工作方式非常不同,pyhon
当您声明 a 时,array
您不需要指定您希望它拥有的空格数。在
java
这方面有所不同,因为对于那种类型的数组,您必须始终定义一个大小,因此它们被称为固定内存数组,您无法将它们用作动态内存数组,也就是说一旦你设置了数组将要具有的值或将要具有的空间量,array
更改数组将要使用的内存量或空间量的唯一方法是重新声明它,这直接清空内存。为了让你更好地理解我,第四个错误是你有这个:
那是错误的,必须更正,因为它们
[]
不追随变量的名称,它们以这种方式追随类型:现在修正了那个小细节,请记住,当您在等号后使用花括号 (
{}
) 时,这是因为您正在尝试将值直接分配给数组,因此您可以执行以下操作并且它会起作用:但是,当您将键留空时:
这相当于说您不会在数组中保存任何内容,也无法保存任何内容,也就是说,您正在使用
0
元素的内存空间定义数组:那将是在内存中声明带有
x
空格但不直接分配值的数组的另一种方式,也就是说,就像在内存中分配了空白空间,您可以稍后填充。第五个问题是在这一行中你忘记了
;
最后一个,我已经为你添加了它:也就是说,让我们更正您的代码:
如果您想查看结果,您可以稍后打印
array
: