
正文
java降序排序代码 javasort降序
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java中怎样对一个整数数组进行降序排序
int[] array = {1,2,5,8,12}; //随便定义一个数组,用冒泡排序法
for (int i = 0;i array.length;i++){
for(int j = i;j array.length;j++){
if (array[i] array[j]){
int temp = array[i];
array[i] = array[j];
array[i] = temp;
}
}
}
或者你有一个数组
List list = new ArrayList();
list.sort();
相关问答
Q1: JAVA程序设计如何从高到低将从命令行读取的一组数字进行降序排序?
import java.util.Arrays;
import java.util.Scanner;
public class Test4 {
public static void main(String[] args) {
System.out.print("输入一串纯数字后按Enter键:");
Scanner sc = new Scanner(System.in);
String inps = sc.nextLine();
int maxNum = 0;
if(inps.trim().length()==0){
System.err.println("未输入有效数字内容!");
return;
}
Object[] inpsArr = new Object[0];
if(inps.indexOf(",")-1){
inpsArr = inps.split(",");//如果带有英文逗号则以逗号分隔拆分为数组
}else{
char[] charArray = inps.toCharArray();//否则拆分为数组时把每一个字符作为数组的一个元素
inpsArr = new Object[charArray.length];
for (int i = 0; i charArray.length; i++) {
char c = charArray[i];
inpsArr[i] = String.valueOf(c);
}
}
Object[] xx2 = sorts(inpsArr);//排序
System.out.println(Arrays.asList(xx2));//打印排序结果
}
/**
* 从大到小对数组元素进行排序,数组中的不可转换为数值的元素将保持原位置不变,不参与排序
* @param soureArr : 待排序的数组
* @return 排序好的数组
*/
static Object[] sorts(Object[] soureArr){
Object[] arr = Arrays.copyOf(soureArr, soureArr.length);//复制一份副本进行操作,不改变原数组内容
Double d = 0d;//允许元素带有小数点
Double d2 = 0d;//允许元素带有小数点
for (int i = 0; i arr.length-1; i++) {
String ss = String.valueOf(arr[i]);
try{
d = Double.valueOf(ss);
}catch(Exception e){
continue;//跳过 不可转换为数值的元素
}
for (int j = i+1; j arr.length; j++) {
String ss2 = String.valueOf(arr[j]);
try{
d2 = Double.valueOf(ss2);
}catch(Exception e){
continue;//跳过 不可转换为数值的元素
}
if(d d2){//排序方式:dd2为降序,dd2为升序
arr[i] = ss2;
arr[j] = ss;
ss = ss2;
d = d2;
}
}
}
return arr;
}
}
Q2: Java编写程序实现Comparator接口,实现字符串按 降序排序怎么弄?
Comparator升序降序实现 int compare(Object o1, Object o2) 返回一个基本类型的整型 1) 如果要按照升序排序, 则o1 小于o2,返回-1(负数),相等返回0,01大于02
Q3: JAVA如何用TreeMap 去统计一个整数数组中 每个数出现的次数 并进行降序排序 求完整的代码
MapInteger, Integer map = new HashMapInteger, Integer();
Integer[] ks = new Integer[50];
Random rand = new Random();
for (int i = 0; i ks.length; i++) {// 赋值50个随机数
ks[i] = rand.nextInt(6) + 30;
}
for (int i = 0; i ks.length; i++) {// 统计个数
if (map.get(ks[i]) == null) {
map.put(ks[i], 1);
} else {
map.put(ks[i], map.get(ks[i]) + 1);
}
}
ListInteger list = new ArrayListInteger(map.keySet());
Collections.sort(list);// 排序
Collections.reverse(list);// 降序排列
for (Integer num : list) {
System.out.println(num + " 个数: " + map.get(num));
}
Q4: java里升序和降序最简短的代码分别是什么?
直接调用jdk里面的方法Arrays.sort(args)方法。而且这个方法重载实现了多个参数,排序下标[N~M]位数字~倒叙,升序等等~
for (int i = 0; i list.size(); i++) {
for (int j = i + 1; j list.size(); j++) {
if (list.get(i) list.get(j)) {
int temp = list.get(i);
list.set(i, list.get(j));
list.set(j, temp);
}
}
}
System.out.println("升序:" + list);
for (int i = 0; i list.size(); i++) {
for (int j = i + 1; j list.size(); j++) {
if (list.get(i) list.get(j)) {
int temp = list.get(i);
list.set(i, list.get(j));
list.set(j, temp);
}
}
}
System.out.println("降序:" + list);
Q5: 如何在Java中从键盘输入10个数,用选择法按降序排序并输出?
在Java中在数组中保存10个数,调用下面java降序排序代码的排序函数java降序排序代码,用选择法按降序排序:public static void selectionSort(int[] arr){ for (int i = 0; i arr.length - 1; i++) { int max = i; for (int j = i + 1; j arr.length; j++) { if (arr[max] arr[j]) { max = j; } } if (max != i) { int tmp = arr[max]; arr[max] = arr[i]; arr[i] = tmp; } } }
关于java降序排序代码和javasort降序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







