在 for 循环中使用 long 变量类型

Using the long variable type in for loops

我一直在尝试使用一些非常大的数字。我在 for 循环中使用 long 变量类型时遇到了问题。

假设我想使用 600000000000

我尝试制作一个简单的 for 循环,循环遍历 600000000000 次。这是我的尝试(java):

    long n = 2342345234L;
    for (int i = 1; i==n; i++)
    {
        System.out.println(i);
    }

我运行 代码,它没有输出任何东西。我尝试将 int i = 1 更改为 long i = 1long i = 1L

我没有使用 long 变量类型的经验,所以我希望能解释一下我需要在代码中更改的内容 and/or 对差异的简单解释在 intlong

之间

我已经检查了重复的帖子,但它们似乎都更关注那些没有在他们的数字后面加上 L 的人,而不是我的循环似乎立即终止的问题。

感谢大家的回复。值得注意的是任何阅读我的问题的解决方案都与 long 变量类型无关的人。只是我对for循环的错误实现

这与 longint 无关,这是因为您循环 while i == n ,这在第一次迭代时是错误的,因为 1不等于 2342345234.

您可以改为循环 while i < n:

long n = 2342345234L;
for (long i = 1; i < n; i++)
{
    System.out.println(i);
}

i==n 更改为 i < n您需要先了解循环的工作原理。

long n = 2342345234L;
for (long i = 1; i < n; i++) {
    System.out.println(i);
}