java-JavaTreeSet的元素比较怎么比较?就是有许多元素,每一个元素都要单独进行排序,怎么排序?

问题描述

JavaTreeSet的元素比较怎么比较?就是有许多元素,每一个元素都要单独进行排序,怎么排序?

比如://价格排序
public void sortPrice(){
Iterator it=tree.iterator();
System.out.println("价格排序:");
while(it.hasNext()){
System.out.println(it.next());
}
}

下面还有
//作者排序
//出版日期排序
麻烦大家解答一下,谢谢了。

解决方案

TreeSet的元素需要实现Comparable或者Comparator接口,也就是说每次只能用一种排序方式。如果你需要对三种属性进行排序的话,可以定义三个类,分别按照三种属性进行排序。

解决方案二:

指定不同的comparator

解决方案三:

把我上次完整写给你的程序找出来看一下。

时间: 2024-08-02 02:49:22

java-JavaTreeSet的元素比较怎么比较?就是有许多元素,每一个元素都要单独进行排序,怎么排序?的相关文章

js获取数组的最后一个元素

 (1)js内置pop方法 pop() 方法用于删除并返回数组的最后一个元素,注意这里在获取了数组的最后一个元素的同时也将原数组的最后一个元素给删除了.如果数组已经为空,则该方法不改变数组,并返回 undefined 值,如: 1 2 3 4 <script> var args=new Array(['www'],['jb51'],['net']); alert(args.pop());//net </script> (2)根据length方法获取,例如: 1 2 3 4 <

javascript-js如何判断一个元素是否被点击了

问题描述 js如何判断一个元素是否被点击了 js如何判断一个元素是否被点击了,例如: 我想判断第一个a标签是否被点击了. 解决方案 你可以这样写 <a onclick="c()">123</a> <script type="text/javascript"> function c(){ alert("你点击了a标签!!"); window.location.href="你要跳转的地址"; }

浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号_javascript技巧

1 C,C++,Java,PHP都能容忍末尾的逗号 C,C++,Java中对数组赋值时,最后一个元素末尾的逗号可有可无.下面两行代码对这些语言来说是等效的. int a[] = {1,2,3}; /* 正确 */ int a[] = {1,2,3,}; /* 正确 */ PHP这一点也继承了C的特点,下面的两行代码等效. $a = array(1,2,3); /* 正确 */ $a = array(1,2,3,); /* 正确 */ 2 JavaScript视末尾逗号为语法错误! 然而到了Jav

java数组-一个数组可以看成一个类吗,数组当中的每一个元素可以看成一个对象吗

问题描述 一个数组可以看成一个类吗,数组当中的每一个元素可以看成一个对象吗 一个数组可以看成一个类吗,数组当中的每一个元素可以看成一个对象吗 解决方案 数组是一种数据类型,数组中的每个元素类型取决于它的声明是什么类型,例如:String[],里面只能存放String类型的数据.Student[],里面只能存放Student类型的数据. 解决方案二: 数组是一个容器 ,你可是在里面放类 ,但它不是一个类 解决方案三: 不能,虽然数组里可以放很多东西,但它不是一个类.数组,就是相同数据类型的元素按一

php中删除数组的第一个元素和最后一个元素的函数_php技巧

对于一个php数组,该如何删除该数组的第一个元素或者最后一个元素呢?其实这两个过程都可以通过php自带的函数 array_pop 和 array_shift 来完成,下面就具体介绍一下如何来操作. (1)使用 array_pop 删除数组的最后一个元素,例如: $user=array('apple','banana','orange'); $result=array_pop($user); print_r($result); print_r($user); 结果将是: orange array(

mongodb-java,cursor获取最后一个元素

问题描述 mongodb-java,cursor获取最后一个元素 求解大神,java下能不能不通过while(cursor.hasnext){},而是直接向get(index)那样获得最后一个元素?

java-Java输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

问题描述 Java输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组. Rt很基础的但是搞了好久都不会,大神救救我题目就是输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组.[ 解决方案 int max = 0 min = 0;for (int i = 0; i < arr.length(); i++){ if (arr[i] > arr[max]) max = i; if (arr[i] < arr[min]) min = i;}int temp =

在一个整型数组中有一个元素的出现次数超过了数组长度的一半,试设计一个 在时间上尽可能高效的算法,找出这个元素。

题目:在一个整型数组中有一个元素的出现次数超过了数组长度的一半,试设计一个 在时间上尽可能高效的算法,找出这个元素.要求:(1)给出算法的基本设计思想.(2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释.(3)说明你所设计算法的时间复杂度和空间复杂度. (1)基本的设计思想: 一个数字出现的次数超过了长度的一半, 那么我们可以这样认为这个数字出现的个数一定大于其他全部数字出现的个数之和.算法的步骤如下: ①设数组为data[],数组长度为n,i=1.置currentAxi

希望用java操作word,有表格,数据较多,还有一个嵌入的txt

问题描述 希望用java操作word,有表格,数据较多,还有一个嵌入的txt 希望用java操作word,有表格,数据较多,还有一个嵌入的txt,freemarker好像不可以..... 解决方案 用Apache POI ,可以直接通过java程序操作word文档 解决方案二: 用POI的网上可以搜到也能下载到.