Java int []表打印反向数字

时间:2017-09-18 10:57:19

标签: java

我已经开始编写Java代码而不想找到解决方案:

我有这个表:

int nmb[ ] = {1,2,3,4,5,6,7,8,9,10};

它应该输出10到1的数字储备

到目前为止我测试过的还没有工作

int nmb[ ] = {1,2,3,4,5,6,7,8,9,10}; 

    for(int i=10; i >= 1; i--)
        nmb[i]=i*2;

    for(int i=10; i >= 1; i--)
        System.out.println(nmb[i]);

此外,代码应打印出字符串中的第5个数字。

如果你能帮助我解决这个问题,我将非常感激。

3 个答案:

答案 0 :(得分:5)

以下 from PyQt5 import QtCore, QtGui, QtWidgets class Ui_Dialog(object): def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(383, 54) self.label = QtWidgets.QLabel(Dialog) self.label.setGeometry(QtCore.QRect(40, 10, 61, 16)) self.label.setObjectName("label") self.pushButton = QtWidgets.QPushButton(Dialog) self.pushButton.setGeometry(QtCore.QRect(270, 10, 75, 23)) self.pushButton.setObjectName("pushButton") self.lineEdit = QtWidgets.QLineEdit(Dialog) self.lineEdit.setGeometry(QtCore.QRect(110, 10, 113, 20)) self.lineEdit.setObjectName("lineEdit") self.retranslateUi(Dialog) self.pushButton.clicked.connect(self.lineEdit.clear) QtCore.QMetaObject.connectSlotsByName(Dialog) def retranslateUi(self, Dialog): _translate = QtCore.QCoreApplication.translate Dialog.setWindowTitle(_translate("Dialog", "Dialog")) self.label.setText(_translate("Dialog", "Enter Text")) self.pushButton.setText(_translate("Dialog", "Clear")) 循环应该有效:

    import sys
from FirstApp import *

class MyForm(QtGui.QDialog):
    def _init_(self,parent=none):
        QtGui.QWidget._init_(self,parent)
        self.ui = Ui_Dialog()
        self.ui.setupUi(self)

if _name_ == "_main_":
    app = QtGui.QApplication(sys.argv)
    myapp = MyForm()
    myapp.show()
    sys.exit(app.exec_())

Java数组可从索引,直到数组的长度减去一。

答案 1 :(得分:0)

在Java中,数组是类似元素类型的集合.Arrays是基于索引的数据结构,其中第一个元素存储在索引0,数组中的第一个元素将被访问为array[0]其中最后一个元素可以作为array[size-1]

访问

要反转元素,您可以按相反的顺序循环索引,Tim Biegeleisen exaclty显示的方式也是如此。

如果您对学习高级概念更感兴趣,那么我们可以使用sortArrays类的Collections方法为您获取所需的输出。请阅读下面的内容,找出以相反顺序获取元素的替代方法。

在使用Comparator.reverseOrder()Stream的java 8中,我们可以轻松地颠倒顺序。对于例如

System.out.println("Reversing with Java 8 ");
    Integer []numerals= {1,2,3,4,5,6,7,8,9,10};
        Arrays.stream(numerals)
                .sorted(Comparator.reverseOrder())
                .forEach(System.out::println);

如果您仍在使用Java 6,那么我们可以使用Collections.reverseOrder()实现相同的目标,如下所示

 System.out.println("Reversing with Java 6 ");
   Integer []numerals= {1,2,3,4,5,6,7,8,9,10};
    Arrays.sort(numerals,Collections.reverseOrder());
      for(Integer i=0;i<numerals.length;i++) {
          System.out.println(numerals[i]);
      }

您还可以使用advance-for-loop,如下所示

   System.out.println("Reversing with Java 6 Advanced for loop  ");
     Integer []numerals= {1,2,3,4,5,6,7,8,9,10};
        Arrays.sort(numerals,Collections.reverseOrder());
          for(Integer number :numerals) {
              System.out.println(number);
          }

答案 2 :(得分:-1)

请查找附加代码:以相反的顺序打印数字,并将第5个元素打印为字符串 公共类ReverseNumber {

public static void main(String args[]) {
    try {
        int nmb[ ] = {1,2,3,4,5,6,7,8,9,10}; 
        int []newArray = new int[nmb.length]; 
        int arrayLength = newArray.length ;
        int i,j;
        for(i=0,j=arrayLength-1;i<arrayLength & j >=0;j--, i++)
            newArray[j]=nmb[i];

        System.out.println("Reverse Number : ");
        for (i = 0; i < newArray.length; i++) {
            //nmb[i]=newArray[i];
            System.out.println(newArray[i]);
        }

        System.out.println("Number present at fifth position : "+Integer.toString(nmb[4]));

    } catch (Exception e) {
        e.printStackTrace();
    }
}

}