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

Java編程實(shí)現(xiàn)用hash方法切割文件

 更新時(shí)間:2017年12月04日 09:08:49   作者:yan456jie  
這篇文章主要介紹了Java編程實(shí)現(xiàn)用hash方法切割文件,簡單介紹了hash的概念,然后分享了使用方法示例,具有一定借鑒價(jià)值,需要的朋友可以了解下。

Hash,一般翻譯做“散列”,也有直接音譯為“哈?!钡模褪前讶我忾L度的輸入(又叫做預(yù)映射, pre-image),通過散列算法,變換成固定長度的輸出,該輸出就是散列值。這種轉(zhuǎn)換是一種壓縮映射,也就是,散列值的空間通常遠(yuǎn)小于輸入的空間,不同的輸入可能會散列成相同的輸出,所以不可能從散列值來唯一的確定輸入值。簡單的說就是一種將任意長度的消息壓縮到某一固定長度的消息摘要的函數(shù)。

如果有大型數(shù)據(jù)文件(如每行為url或者ip或者單詞等的),以G為單位的,處理的時(shí)候需先切分。普通切分方法直接根據(jù)數(shù)據(jù)條數(shù)切分,得到的每個(gè)文件大小相近。

但是有時(shí)需要將相同數(shù)據(jù)放到相同文件中。可以使用hash切分法。

public class Test { 
   
  static int HASHLEN = 1000; 
   
  public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    String words [] = {"yes" ,"an" ,"go"}; 
    for(String word:words){ 
      int temp = hash(word.toCharArray()); 
      System.out.println(temp); 
    } 
  } 
  public static int hash(char[] word) { 
    int index = 0;  
    int i=0; 
    while(i<word.length) { 
      index += index * 31 + word[i];  
      i++; 
    }  
    return index % HASHLEN;  
  }  
} 

總結(jié)

以上就是本文關(guān)于Java編程實(shí)現(xiàn)用hash方法切割文件的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。

相關(guān)文章

  • pagehelper插件顯示total為-1或1的問題

    pagehelper插件顯示total為-1或1的問題

    這篇文章主要介紹了pagehelper插件顯示total為-1或1,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Object.wait()與Object.notify()的用法詳細(xì)解析

    Object.wait()與Object.notify()的用法詳細(xì)解析

    以下是對java中Object.wait()與Object.notify()的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-09-09
  • springboot將mybatis升級為mybatis-plus的實(shí)現(xiàn)

    springboot將mybatis升級為mybatis-plus的實(shí)現(xiàn)

    之前項(xiàng)目工程用的是mybatis,現(xiàn)在需要將其替換為mybatis-plus,本文主要介紹了springboot將mybatis升級為mybatis-plus的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • idea全局設(shè)置Maven配置的實(shí)現(xiàn)步驟

    idea全局設(shè)置Maven配置的實(shí)現(xiàn)步驟

    本文主要介紹了idea全局設(shè)置Maven配置,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 深入探究Java中的類加載機(jī)制

    深入探究Java中的類加載機(jī)制

    這篇文章主要給大家介紹了關(guān)于Java中類加載機(jī)制的相關(guān)資料,JVM將類加載過程分為三個(gè)步驟:裝載(Load)、鏈接(Link)和初始化(Initialize),本文通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-09-09
  • java開發(fā)中如何使用JVisualVM進(jìn)行性能分析

    java開發(fā)中如何使用JVisualVM進(jìn)行性能分析

    JVisualVM是由Sun提供的性能分析工具,如此強(qiáng)大的后盾怎能不強(qiáng)大?在Jdk6.0以后的版本中是自帶的,配置好環(huán)境變量然后在運(yùn)行中輸入“JVisualVm”或直接到Jdk的安裝目錄的Bin目錄下找到運(yùn)行程序即可運(yùn)行。如果是用Jdk1.5或以前版本的朋友就得要單獨(dú)安裝了
    2015-12-12
  • Java解析XML的四種方式

    Java解析XML的四種方式

    本文詳細(xì)講解了Java解析XML的四種方式,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • 淺談Spring Data Redis讀不到設(shè)進(jìn)去的值

    淺談Spring Data Redis讀不到設(shè)進(jìn)去的值

    本文主要介紹了Spring Data Redis怎么讀不到我剛才設(shè)進(jìn)去的值,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • java生成文件夾和文件的簡單示例分享

    java生成文件夾和文件的簡單示例分享

    這篇文章主要介紹了java生成文件夾和文件的簡單示例,需要的朋友可以參考下
    2014-04-04
  • Java 實(shí)現(xiàn)常見的非對稱加密算法

    Java 實(shí)現(xiàn)常見的非對稱加密算法

    這篇文章主要介紹了Java 實(shí)現(xiàn)常見的非對稱加密算法,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-11-11

最新評論