大數據計算文件與Java計算文件的區別【重點!!!】

大數據計算文件與Java計算文件的區別【重點!!!】

package com.njbdqn;

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.HashMap;
import java.util.Map;
/*
*在Java裏面就是用開多線程的方式:cpu的速度快,正常狀況下,
* 就能夠在很短的時間內執行多個文件夾
* 給人感受是同時執行多個文件,同時執行(時間片輪轉的方式)
* 只要速度足夠快,就能夠定義爲並行執行文件(併發運行)搶時間片。
* cpu的速度是有限度的,要適當執行。
*
*
* 在大數據裏面就是分配多個機器,把數據分割成不少份,而後分配到墮胎計算機上面
* 進程出入的方式
*
* */

// I/O流讀寫
public class MyDemo {
    public static void main(String[] args) throws Exception{//拋出異常
        //線性結構兩個(1.數組(ArrayList)  2.列表)
        //Set<>底下也是Map<>
        Map<String,Integer> word = new HashMap<String, Integer>();
        BufferedReader br = new BufferedReader(new FileReader("d:/abc.txt"));
        String line = br.readLine();
        while (line!=null){
            //System.out.println(line);
            String [] wds = line.split("");
            //加強型for循環
            for (String wd:wds){
                //分爲兩種狀況 1.存在
                if (word.containsKey(wd)){
                    word.put(wd,word.get(wd)+1);
                }  else {
                    //2.不存在
                    word.put(wd,1);
                }
            }
            line = br.readLine();
        }
        //拋出異常
        br.close();
        //入(那麼大)表達式
        //哈希Map是鍵值隊,兩個值。一個值就不須要括號了,就一個值就好了。
        word.forEach((k,v)->{
            System.out.println(k+":"+v);
        });
        /*
        * 表 wds
        * word列
        *
        * hello
        * cm
        * hello
        * woeld
        * select word,count(*) from wds group by word
        */
    }
}
相關文章
相關標籤/搜索