java 输入任意几个数字,怎样将他们从大到小排序?

Python018

java 输入任意几个数字,怎样将他们从大到小排序?,第1张

public static void main(String[] args) { Scanner scan = new Scanner(System.in)。

}

System.out.println("从大到小输出:")

for (int m = num.length-1m >=0m--) {

System.out.println(num[m])//从大到小输出

}

}

String[] str = scan.nextLine().split(" "),// 输入时以空格隔开数字

int[] num = new int[str.length]//初始化一个整型数组,长度为你输入数字的个数。

String[] str = scan.nextLine().split(" ")// 输入时以空格隔开数字

int[] num = new int[str.length]//初始化一个整型数组,长度为你输入数字的个数

for (int i = 0i <str.lengthi++) {

num[i] = Integer.parseInt(String.valueOf(str[i]))//将字符转换为int型再赋给整型数组

}

Arrays.sort(num)//升序排序

System.out.println("从小到大输出:")

for (int j = 0j <num.lengthj++) {

System.out.println(num[j])//从小到大输出

实现思路:就是输入的数字之间有固定的规则,之后读取后,依次进行大小比较,之后直到排序结束,输出结果即可:

import java.util.Scanner

public class ArrangedNumbers {

Integer arryNum[]

int count = 0/* 统计数字 */

boolean judgeIsNum = true

StringBuffer stringbuffer = new StringBuffer()

Scanner scanner = new Scanner(System.in)

String character

int memoryNum

/**

* 任意输入字符

*

* @return 返回输入的内容

*/

// public String inputNum() {

// return null

// }

/**

* 判断为数字

*/

public void judgmentFigures() {

while (judgeIsNum) {

System.out.println("请任意输入数字,以空格间隔,以回车结束!")

character = scanner.nextLine()

char[] figures = character.toCharArray()

for (int i = 0i <figures.lengthi++) {

if (!(figures[i] >= '1' &&figures[i] <= '9')

&&figures[i] != 32) {

judgeIsNum = true

break

}

judgeIsNum = false

}

if (!judgeIsNum)

stringbuffer.append(character)

}

String inputContent = stringbuffer.toString()

String[] numbers = inputContent.split("\\s+")

arryNum = new Integer[numbers.length]

for (int i = 0i <numbers.lengthi++) {

try {

memoryNum = Integer.parseInt(numbers[i])

arryNum[count] = new Integer(memoryNum).intValue()

count++

} catch (Exception e) {

/* 如果不出现异常,则说明肯定是数字 */

}

}

}

/**

* 对数字进行排序

*/

public void compareNum() {

for (int i = 0i <arryNum.lengthi++) {

for (int j = 0j <arryNum.length - i - 1j++) {

if (arryNum[j] >arryNum[j + 1]) {

Integer temp = arryNum[j]

arryNum[j] = arryNum[j + 1]

arryNum[j + 1] = temp

}

}

}

}

/**

* 按升序排列输出

*/

public void outputNum() {

System.out.println("按升序排序:")

for (int i = 0i <arryNum.lengthi++) {

System.out.println(arryNum[i])

}

}

}

//package com.color.program

public class JJArrangedNumbers {

public static void main(String args[]) {

ArrangedNumbers arrangeNumbers = new ArrangedNumbers()

arrangeNumbers.judgmentFigures()

arrangeNumbers.compareNum()

arrangeNumbers.outputNum()

}

}

--------运行结果-------

请任意输入数字,以空格间隔,以回车结束!

123 4 5 6 7 7,23

请任意输入数字,以空格间隔,以回车结束!

2 e adf 3 4

请任意输入数字,以空格间隔,以回车结束!

5 6 6 76 7

按升序排序:

5

6

6

7

76

上述公式可以修改为:=-*INT(/)。MONTH函数函