最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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è)試頁(yè)面
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)文章

  • SpringBoot整合POI實(shí)現(xiàn)Excel文件讀寫操作

    SpringBoot整合POI實(shí)現(xiàn)Excel文件讀寫操作

    EasyExcel是一個(gè)基于Java的、快速、簡(jiǎn)潔、解決大文件內(nèi)存溢出的Excel處理工具,這篇文章主要介紹了SpringBoot整合POI實(shí)現(xiàn)Excel文件讀寫操作,首先準(zhǔn)備環(huán)境進(jìn)行一系列操作,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2023-10-10
  • 詳解Elasticsearch如何把一個(gè)索引變?yōu)橹蛔x

    詳解Elasticsearch如何把一個(gè)索引變?yōu)橹蛔x

    這篇文章主要為大家介紹了詳解Elasticsearch如何把一個(gè)索引變?yōu)橹蛔x示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • springboot設(shè)置加載靜態(tài)資源的路徑(spring.resources.static-locations)

    springboot設(shè)置加載靜態(tài)資源的路徑(spring.resources.static-locations)

    這篇文章主要介紹了springboot設(shè)置加載靜態(tài)資源的路徑方式(spring.resources.static-locations),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 深入解析java中的靜態(tài)代理與動(dòng)態(tài)代理

    深入解析java中的靜態(tài)代理與動(dòng)態(tài)代理

    本篇文章是對(duì)java中的靜態(tài)代理與動(dòng)態(tài)代理進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助
    2013-10-10
  • 解讀為什么@Autowired在屬性上被警告,在setter方法上不被警告問題

    解讀為什么@Autowired在屬性上被警告,在setter方法上不被警告問題

    在Spring開發(fā)中,@Autowired注解常用于實(shí)現(xiàn)依賴注入,它可以應(yīng)用于類的屬性、構(gòu)造器或setter方法上,然而,當(dāng)@Autowired注解在屬性上使用時(shí),IntelliJIDEA等IDE會(huì)給出Fieldinjectionisnotrecommended的警告,而在setter方法上使用@Autowired時(shí)卻不會(huì)出現(xiàn)這個(gè)警告
    2025-02-02
  • 23種設(shè)計(jì)模式(6)java裝飾者模式

    23種設(shè)計(jì)模式(6)java裝飾者模式

    這篇文章主要為大家詳細(xì)介紹了23種設(shè)計(jì)模式之java裝飾者模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • IDEA使用MyBatisCodeHelperPro來generator代碼的詳細(xì)教程

    IDEA使用MyBatisCodeHelperPro來generator代碼的詳細(xì)教程

    這篇文章主要介紹了IDEA使用MyBatisCodeHelperPro來generator代碼的詳細(xì)教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 在SpringBoot中注入RedisTemplate實(shí)例異常的解決方案

    在SpringBoot中注入RedisTemplate實(shí)例異常的解決方案

    這篇文章主要介紹了在SpringBoot中注入RedisTemplate實(shí)例異常的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Java從入門到起飛之變量與運(yùn)算符詳解

    Java從入門到起飛之變量與運(yùn)算符詳解

    這篇文章主要介紹了Java編程語言中的關(guān)鍵字、標(biāo)識(shí)符、變量、基本數(shù)據(jù)類型以及運(yùn)算符等基本概念和用法,它涵蓋了變量聲明、賦值、類型轉(zhuǎn)換、字符串操作以及運(yùn)算符優(yōu)先級(jí)等內(nèi)容,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • SpringBoot中各個(gè)層級(jí)結(jié)構(gòu)的具體實(shí)現(xiàn)

    SpringBoot中各個(gè)層級(jí)結(jié)構(gòu)的具體實(shí)現(xiàn)

    在SpringBoot項(xiàng)目中,常常會(huì)把代碼文件放入不同的包中,本文主要介紹了SpringBoot中各個(gè)層級(jí)結(jié)構(gòu)的具體實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-05-05

最新評(píng)論

井冈山市| 百色市| 华安县| 崇信县| 云和县| 肇东市| 江华| 沁水县| 晋州市| 云龙县| 汶川县| 许昌县| 襄垣县| 黎平县| 永川市| 卢湾区| 平塘县| 舟山市| 会宁县| 盐津县| 舒城县| 泸西县| 辽源市| 信阳市| 湾仔区| 乾安县| 乐清市| 蕉岭县| 都匀市| 乌拉特后旗| 安仁县| 丹巴县| 聂拉木县| 荣成市| 平塘县| 阳城县| 土默特左旗| 青冈县| 池州市| 株洲市| 郧西县|