欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java實(shí)現(xiàn)對(duì)map的字典序排序操作示例

 更新時(shí)間:2019年07月25日 09:28:12   作者:bestcxx  
這篇文章主要介紹了java實(shí)現(xiàn)對(duì)map的字典序排序操作,結(jié)合實(shí)例形式分析了java參照微信官網(wǎng)算法實(shí)現(xiàn)的字典序排序操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了java實(shí)現(xiàn)對(duì)map的字典序排序操作。分享給大家供大家參考,具體如下:

java中對(duì)map的字典序排序,算法驗(yàn)證比對(duì)微信官網(wǎng)https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115&token=&lang=zh_CN,搜索關(guān)鍵字“附錄1-JS-SDK使用權(quán)限簽名算法”

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import org.apache.commons.codec.digest.DigestUtils;
import com.opensymphony.xwork2.ActionSupport;
public class Test extends ActionSupport {
//測(cè)試頁面
public String test(){
return SUCCESS;
}
public static void main(String [] args){
String jsapi_ticket="kgt8ON7yVITDhtdwci0qef4Fd1u2d2iWwTE-nt2tSR7Me3FmWAhtxJa3QQCiMdLper4cUrqpDxkDJ6ljLgc7PA";
int timestamp=1460637652;
String nonceStr="C1WNnEpCwq4wa158";
String url="http://qq.test.com/test/index.html";
//字典序排序
HashMap<String,String> map=new HashMap<String,String>();
map.put("jsapi_ticket", jsapi_ticket);
map.put("timestamp", timestamp+"");
map.put("nonceStr", nonceStr);
map.put("url", url);
Collection<String> keyset= map.keySet();
List list=new ArrayList<String>(keyset);
Collections.sort(list);
//這種打印出的字符串順序和微信官網(wǎng)提供的字典序順序是一致的
for(int i=0;i<list.size();i++){
System.out.println(list.get(i)+"="+map.get(list.get(i)));
}
//微信官網(wǎng)寫的按照字典序排序后的字符串
String sign="jsapi_ticket="+jsapi_ticket+"&noncestr="+nonceStr+"×tamp="+timestamp+"&url="+url;
//System.out.println(DigestUtils.shaHex("jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg&noncestr=Wm3WZYTPz0wzccnW×tamp=1414587457&url=http://mp.weixin.qq.com?params=value"));
//微信返回的加密串
String signature=DigestUtils.shaHex(sign);//sha1加密
System.out.println(signature);
}
}

PS:這里再為大家推薦一款關(guān)于排序的演示工具供大家參考:

在線動(dòng)畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過程工具:
http://tools.jb51.net/aideddesign/paixu_ys

更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • java開發(fā)之Jdbc分頁源碼詳解

    java開發(fā)之Jdbc分頁源碼詳解

    這篇文章主要介紹了java開發(fā)之Jdb分頁源碼詳解,需要的朋友可以參考下
    2020-02-02
  • 在SpringBoot3中spring.factories配置不起作用的原因和解決方法

    在SpringBoot3中spring.factories配置不起作用的原因和解決方法

    本文給大家介紹了在SpringBoot3中spring.factories配置的自動(dòng)裝配不生效的原因和解決方法,文中通過代碼和圖文給出了詳細(xì)的解決方法,具有一定的參考價(jià)值,需要的朋友可以參考下
    2024-02-02
  • java的Arrays工具類實(shí)戰(zhàn)

    java的Arrays工具類實(shí)戰(zhàn)

    java.util.Arrays類能方便地操作數(shù)組,它提供的所有方法都是靜態(tài)的。Arrays作為一個(gè)工具類,能很好的操作數(shù)組。下面介紹主要使用的幾個(gè)函數(shù)
    2016-12-12
  • Java數(shù)據(jù)結(jié)構(gòu)之鏈表的增刪查改詳解

    Java數(shù)據(jù)結(jié)構(gòu)之鏈表的增刪查改詳解

    今天帶大家來學(xué)習(xí)Java鏈表的增刪改查的相關(guān)知識(shí),文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)Java的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-05-05
  • 2022最新Java泛型詳解(360度無死角介紹)

    2022最新Java泛型詳解(360度無死角介紹)

    Java泛型(generics)是JDK5中引入的一個(gè)新特性,泛型提供了 編譯時(shí)類型安全監(jiān)測(cè)機(jī)制,該機(jī)制允許我們?cè)诰幾g時(shí)檢測(cè)到非法的類型數(shù)據(jù)結(jié)構(gòu),這篇文章主要介紹了java泛型的基本概念及使用詳解,感興趣的朋友跟隨小編一起看看吧
    2022-10-10
  • Java中Object轉(zhuǎn)換為List類型的實(shí)現(xiàn)方法

    Java中Object轉(zhuǎn)換為List類型的實(shí)現(xiàn)方法

    這篇文章主要介紹了Java中Object轉(zhuǎn)換為List類型的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Java 讀取文本指定的某一行內(nèi)容的方法

    Java 讀取文本指定的某一行內(nèi)容的方法

    今天小編就為大家分享一篇Java 讀取文本指定的某一行內(nèi)容的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Java線程安全中的原子性淺析

    Java線程安全中的原子性淺析

    這篇文章主要介紹了Java線程安全中的原子性,原子性是指一條線程在執(zhí)行一系列程序指令操作時(shí),該線程不可中斷。一旦出現(xiàn)中斷,那么就可能會(huì)導(dǎo)致程序執(zhí)行前后的結(jié)果不一致
    2023-02-02
  • 詳解Java中的防抖和節(jié)流

    詳解Java中的防抖和節(jié)流

    防抖是將多次執(zhí)行變?yōu)橹付〞r(shí)間內(nèi)不在觸發(fā)之后,執(zhí)行一次。節(jié)流是將多次執(zhí)行變?yōu)橹付〞r(shí)間不論觸發(fā)多少次,時(shí)間一到就執(zhí)行一次。這篇文章來和大家聊聊Java中的防抖和節(jié)流,感興趣的可以了解一下
    2022-08-08
  • Java將時(shí)間按月份分段的實(shí)現(xiàn)思路與方法

    Java將時(shí)間按月份分段的實(shí)現(xiàn)思路與方法

    這篇文章主要給大家介紹了關(guān)于Java將時(shí)間按月份分段的實(shí)現(xiàn)思路與方法,通過文中介紹的方法可以將時(shí)間分成我們想要的時(shí)間段,文中給出了詳細(xì)的實(shí)例代碼,需要的朋友可以參考下
    2021-07-07

最新評(píng)論