gpt4 book ai didi

java - 为什么 array[d] 的值为 5?

转载 作者:行者123 更新时间:2023-12-01 11:47:42 25 4
gpt4 key购买 nike

我是数组新手...而且我很难理解数组仅在此代码中如何工作...我正在做冒泡排序。我唯一不明白的是变量 d 可以放入变量数组吗???

import java.util.Scanner;

public class bubbleSort
{
public static void main(String []args)
{
int n, c, d, swap;
Scanner in = new Scanner(System.in);

System.out.print("Input number of integers to sort");
n = in.nextInt();

int array[] = new int[n];

System.out.println("Enter " + n + " integers");

for (c = 0; c < n; c++)
array[c] = in.nextInt();

for (c = 0; c < ( n - 1 ); c++)
{
for (d = 0; d < n - c - 1; d++)
{
if (array[d] > array[d+1])
{
System.out.println("array d:" + array[d]); // value is 5
swap = array[d];
array[d] = array[d+1];
array[d+1] = swap;
}
}
}

System.out.println("Sorted list of numbers");

for (c = 0; c < n; c++)
System.out.println(array[c]);
}
}

最佳答案

当它在循环中时,它不是一个变量。该 d 变量将被分配一个数值。在您的情况下,每次循环运行时 d 都会具有从 0 到 n-c-1 的值,这将生成 array[0], array[1]..... 所以这将通过以下示例进行说明:假设您有一个名为:

的数组
int[] array={1,2,3,4,5};

所以当你使用 for 循环循环这个数组时:

for (int i = 0; i< 5; i++)
system.out.println(array[i]);
}

每次循环运行时数组都会像

array[0] 
array[1]
array[2]
array[3]
array[4]

它打印的值如下

1
2
3
4
5

分别这表明变量 i 不被视为变量,而是一个数值

关于java - 为什么 array[d] 的值为 5?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29025802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com