Java 基本数组
这是我得到的输出 1. 7. 6. 4. 0 8. 九, 我的第一个疑问是5在哪里 为什么7和6不能互换 你的第一个问题 您的循环:Java 基本数组,java,arrays,Java,Arrays,这是我得到的输出 1. 7. 6. 4. 0 8. 九, 我的第一个疑问是5在哪里 为什么7和6不能互换 你的第一个问题 您的循环: public class Quicks { public static void main(String args[]) { int temp; int[] list={5,1,7,6,4,0,8,9}; int i; for(i=0;i<=6;i++) {
public class Quicks
{
public static void main(String args[])
{ int temp;
int[] list={5,1,7,6,4,0,8,9};
int i;
for(i=0;i<=6;i++)
{
if(list[i]>list[i+1]);
{
temp=list[i+1];
list[i+1]=list[i];
list[i]=temp;
}
}
for(i=0;i<=6;i++)
{
System.out.println(list[i]);
}
}
}
将是:
for(i=0;i<=6;i++)
{
System.out.println(list[i]);
}
因为数组的大小是8,没有7,6-0+1=7,所以不打印最后一个元素
如果你分析你的代码,你会发现循环将数组的第一个元素移动到最后一个位置。如果要对数组进行排序,这不是代码。您的第一个问题
您的循环:
public class Quicks
{
public static void main(String args[])
{ int temp;
int[] list={5,1,7,6,4,0,8,9};
int i;
for(i=0;i<=6;i++)
{
if(list[i]>list[i+1]);
{
temp=list[i+1];
list[i+1]=list[i];
list[i]=temp;
}
}
for(i=0;i<=6;i++)
{
System.out.println(list[i]);
}
}
}
将是:
for(i=0;i<=6;i++)
{
System.out.println(list[i]);
}
因为数组的大小是8,没有7,6-0+1=7,所以不打印最后一个元素
如果你分析你的代码,你会发现循环将数组的第一个元素移动到最后一个位置。如果要对数组进行排序,这不是代码。如果使用IDE,它应该会显示一条警告,说明If statemenet的正文为空-这是因为您在行尾放了一个分号,而分号不应该在那里 我建议把大括号{放在行尾,而不是下一行,以避免此类错误
至于为什么不打印5,正如其他人提到的,您不会在整个数组中进行迭代。如果您使用IDE,它会向您显示一条警告,说明您的If statemenet有一个空的正文-这是因为您在行尾放了一个分号,而分号不应该在那里 我建议把大括号{放在行尾,而不是下一行,以避免此类错误
至于为什么不打印5,正如其他人提到的,您不会在整个数组中进行迭代。另外,iflist[i]>list[i+1]后面有一个分号;这不应该在那里。另外,iflist[i]>list[i+1]后面有一个分号;那不应该是这样的。除了0、1或其他不变量外,不要在循环条件中使用数字文字,而是使用i