【问题标题】:How do I print a sorted array? [duplicate]如何打印排序数组? [复制]
【发布时间】:2015-08-16 23:07:52
【问题描述】:

下面的代码应该对下面初始化的数组进行排序。

int[] intArray = { 32, 42, 1, 23, 56, 75, 32, 23 };
int temp = 0;

for (int i = 0; i < intArray.length; i++) {
  for (int j = 1; j < intArray.length; j++) {
    if (intArray[j - 1] > intArray[j]) {
      temp = intArray[j - 1];
      intArray[j - 1] = intArray[j];
      intArray[j] = temp;
    }
  }
}

你应该输入什么来得到排序的数组,你应该在哪里输入?

我已经尝试了一些选项,例如在最后两个右括号和前一个括号之间的System.out.println(temp),但我没有打印所有值,而是32 打印了很多次。

在同一区域编写代码System.out.println(j) 或System.out.println(i) 也不起作用。你能解释为什么这些代码不起作用吗?

【问题讨论】:

    标签: java arrays sorting printing


    【解决方案1】:

    如果您只想打印排序后的数组,只需在数组排序后在 for 循环中打印元素即可:

    for(int i=0; i < intArray.length; i++)
    {
        System.out.println(intArray[i]);
    }
    

    【讨论】:

      【解决方案2】:

      当您的代码对数组进行排序时,如果您在任何括号内打印某些内容,它将显示过程,而不是答案。 尝试在最后一个括号之后打印数组。

          int[] intArray={32,42,1,23,56,75,32,23};                
          int temp = 0;
      
          for(int i=0; i < intArray.length; i++){
              for(int j=1; j < intArray.length; j++){
                  if(intArray[j-1] > intArray[j]){
                      temp = intArray[j-1];
                      intArray[j-1] = intArray[j];
                      intArray[j] = temp;
                  }
              }
          }
      
          for( int i=0; i<intArray.length; i++ ){
              System.out.println(intArray[i]);
          }
      

      我的母语不是英语,所以如果我的话有任何语法错误,我深表歉意。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-20
        • 1970-01-01
        • 2021-12-09
        相关资源
        最近更新 更多