java TreeMap() 排序代码

treemap中所有的元素都保持着某种固定的顺序,如果你需要得到一个有序的结果你就应该使用treemap(hashmap中元素的排列顺序是不固定的)。

<%@ page import="java.util.*" %>
<%
   enumeration enames = request.getparameternames();
   if (enames.hasmoreelements()) {
      string title = "parameters";
      map entries = new treemap();
      while (enames.hasmoreelements()) {
         string name = (string) enames.nextelement();
         string[] values = request.getparametervalues(name);
         if (values.length > 0) {
            string value = values[0];
            for (int i = 1; i < values.length; i++) {
               value += "," + values[i];
            }
            entries.put(name, value);
         }
      }
      request.setattribute("_table_title", title);
      request.setattribute("_table_entries", entries);
   }
%>

看一个学生成绩排序方法

package ch12;
import java.util.*;
public class num2{
 public static void main(string[] args) {
 // 定义出treemap,其中key为integer类型的成绩值,value为姓名和成绩组 // 成的字符串。
  //使用map声明对象,是泛型的使用。
  map<integer, string> treemap = new treemap<integer, string>();
  treemap.put(56,"张三56");
  treemap.put(88,"小白88");
  treemap.put(75,"小黑75");
  treemap.put(66,"小兰66");
  treemap.put(98,"小锋98");
  set<integer> keyset = treemap.keyset()); //得到key set
  system.out.print("全部的成绩为 :" + keyset);
  system.out.print("前三名为 :");

  int i = 0;
 // jdk 的新for each效率更高。
 for (integer key : keyset ) {
    if (i++ == 3) {
       // i增长为3说明到了第4个,退出
       break;
    }
  system.out.print(treemap.get(key)+" ");
 
   }
}
}

时间: 2024-09-20 20:33:37

java TreeMap() 排序代码的相关文章

用TreeMap实现java中英文排序代码

在中文排序中发现不能正排序,这是字符国际化问题引起的,可以实现Comparator接口,使用Collator类来解决! ... import java.text.Collator; public class CollatorComparator implements Comparator { Collator collator = Collator.getInstance(); public int compare(Object element1, Object element2) { Coll

二叉树-Java treemap集合类,自定义比较器怎样实现逆字典顺序输出的?

问题描述 Java treemap集合类,自定义比较器怎样实现逆字典顺序输出的? 代码是: import java.util.*; public class Example21 { // 创建TreeMap测试类 public static void main(String[] args) { TreeMap tm = new TreeMap(new MyComparator());// 传入一个自定义比较器 tm.put("1", "Jack"); // 向集合存

Java对象排序、中文排序、SortedSet排序使用和源码讲解

在C.C++中有很多排序算法,但是通常排序算法不得不让程序员在写代码的过程中陷入对底层很多指针和位置的理解,java不希望这样,所以排序大多可以由java帮你做掉,例如,你要对一个数组排序,就通过:Collections.sort(list)那么这个list就被排序了,排序最终调用的是Arrays.sort方法来完成的,所以数组自然是用Arrays.sort了,而SortedSet里面内部也有排序功能也是类似的方式的来实现的,只是内部调用了相关的方法来完成而已:SortedSet只是一个接口,实

java的排序和搜索

Java 1.2添加了自己的一套实用工具,可用来对数组或列表进行排列和搜索.这些工具都属于两个新类的"静态"方法.这两个类分别是用于排序和搜索数组的Arrays,以及用于排序和搜索列表的Collections. 1. 数组 Arrays类为所有基本数据类型的数组提供了一个过载的sort()和binarySearch(),它们亦可用于String和Object.下面这个例子显示出如何排序和搜索一个字节数组(其他所有基本数据类型都是类似的)以及一个String数组:   //: Array

Java字符串排序中文+数字

  思路: 在Java中,排序需要复写的是 equals 方法 和 Comparable<T> 接口 的public int compareTo(T o); 方法 步骤: 1. 使用正则表达式来判断数字,多个连续的数字作为一组, 2. 一次检索出数字组合, 3. 检出下一组数字,如果有,则进入步骤4,否则进入步骤6. 4. 如果两组数字出现的位置相等,并且前面部分的字符串相等,则进入第5步.否则break,跳到第6步. 5. 如果前面部分的字符串完全一致.则比较两个数字的大小,如果大小一致,则

java 的数组代码,急啊

问题描述 java 的数组代码,急啊 从键盘输入20个学生的姓名,ID,3门课的成绩,实现增删改查.降次输出总成绩 解决方案 增删改查可就涉及数据库了- 解决方案二: 用ArrayList类存储数据,用它的函数实现增删,然后用Arrays.sort()实现排序,具体实现自己查 解决方案三: 增删改查的话最好还是用数据库来写 解决方案四: JAVA功能代码<13>----在Java中调整数组大小一个简单JAVA 数组代码 解决方案五: java有Array,ArrayList之类的类有类似的功能

java新人求代码:用myeclipse制作一个带链接的网页,该网页可实现冒泡排序

问题描述 java新人求代码:用myeclipse制作一个带链接的网页,该网页可实现冒泡排序 用myeclipse10制作一个网页,该网页带有提交按钮,点击该按钮后可以实现冒泡排序.要全部代码,谢谢 解决方案 用不用eclipse就没关系了,这个用js就能实现,不需要服务器端,用记事本就能写.http://www.codesec.net/view/176782.html 解决方案二: 首先,建议了解下java web基础,知道怎么从前台页面,到后台的执行流程. 其次,设计页面元素,确定你的冒泡排

Java常用排序算法及性能测试集合_java

现在再回过头理解,结合自己的体会, 选用最佳的方式描述这些算法,以方便理解它们的工作原理和程序设计技巧.本文适合做java面试准备的材料阅读. 先附上一个测试报告: Array length: 20000bubbleSort : 766 msbubbleSortAdvanced : 662 msbubbleSortAdvanced2 : 647 msselectSort : 252 msinsertSort : 218 msinsertSortAdvanced : 127 msinsertSor

2个java希尔排序示例_java

java希尔排序 希尔排序是插入排序的一种类型,也可以用一个形象的叫法缩小增量法.基本思想就是把一个数组分为好几个数组,有点像分治法,不过这里的划分是用一个常量d来控制. 这个0<d<n,n为数组的长度.这个算法有了插入排序的速度,也可以算是一个改进算法,在插入算法中,如果有一个最小的数在数组的最后面,用插入算法就会重最后一个 位置移动到第一个,这样就会浪费很大,使用这个改进的希尔排序可以实现数据元素的大跨度的移动.也就是这个算法的优越之处. 复制代码 代码如下: package cn.cqu