原创 Java OutOfMemory異常

  JVM中使用了三種不同類型的內存區域:Permanent Generation space(永久保存區域)、Heap space(堆區域)、Java Stacks(Java棧)。   永久保存區域主要存放Class(類)和M

原创 Java 常用類型之間的轉換

char 轉 int int key = Character.getNumericValue(str.charAt(i)); // 1 int key = Character.digit(str.charAt(i), 10);

原创 Java 靜態分派與動態分派

  方法調用並不等於方法執行,方法調用階段唯一的任務就是確定被調用方法的版本(即調用哪一個方法),暫時還不涉及方法內部的具體運行過程。   在程序運行時,進行方法調用是最普遍、最頻繁的操作,但是Class文件的編譯過程不包括傳統

原创 截止JDK1.8版本,java併發框架支持的鎖

自旋鎖,自旋,jvm默認是10次,由jvm自己控制,for去爭取鎖 阻塞鎖 被阻塞的線程,不會爭奪鎖 可重入鎖,多次進入改鎖的域 讀寫鎖 互斥鎖,鎖本身就是互斥的 悲觀鎖,不相信這裏是安全的,必須全部上鎖 樂觀鎖,相信這裏是安全

原创 Java 容器綜述

在Java的util包中有兩個所有容器的父接口Collection和Map 容器特點: 1. 用於存儲對象 2. 長度是可變的 3. 不可以存儲基本數據類型值 Array/Arrays Java所有“存儲及隨機訪問一連

原创 Java 如何創建線程

Java 創建線程主要有三種方式: 一、繼承Thread類創建線程類 (1)定義Thread類的子類,並重寫該類的run方法,該run方法的方法體就代表了線程要完成的任務。因此把run()方法稱爲執行體。 (2)創建Thread

原创 sublime 常用功能

package control 的安裝方法 如何安裝插件詳見:https://packagecontrol.io/installation 調出命令行 ctrl + ` 調出package control ctrl + s

原创 Java 線程的幾種狀態

線程在一定條件下,狀態會發生變化。線程一共有以下幾種狀態: 新建狀態(New):新創建了一個線程對象。 就緒狀態(Runnable):線程對象創建後,其他線程調用了該對象的start()方法。該狀態的線程位於“可運行線程池”中,

原创 sublime 插件 for Markdown

MarkDown Editing 支持Markdown語法高亮;支持Github Favored Markdown語法;自帶多個主題。 注:如果你安裝完之後,遇到了如下的錯誤,那麼你安裝的時候可能開着一個Markdown文件

原创 Java Collection 與 Collections的區別

Collection java.util.Collection 是一個集合接口(集合類的一個頂級接口)。它提供了對集合對象進行基本操作的通用接口方法。Collection接口在Java 類庫中有很多具體的實現。Collection

原创 Sourcetree 切換其他分支導致最近的提交丟失

在Sourcetree中,進行一次提交後,如果馬上切換到其他分支,會導致提交到臨時分支的這次提交丟失。 解決方法如下: 1. Sourcetree中,點擊命令行模式,啓動git命令行 2. 輸入 git reflog 顯示歷史

原创 常用排序之快排

快排 複雜度分析 最好時間複雜度:O(NlogN) 最壞時間複雜度:O(N^2) 平均時間複雜度:O(NlogN) 算法穩定性 不穩定 示例 // 包裹函數 void quickSort(T a[], int size){

原创 Code 生成括號

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. For example

原创 typedef char* var 和 #define var char * 的區別

typedef char * String_t 定義了一個新的類型別名,有類型檢查。 #define String_d char * 只做了簡單的替換,無類型檢查。 前者在編譯的時候處理,後者在預編譯的時候處理。 同時定義多個

原创 Java 數組 與 循環遍歷

Java 數組 數組由多個元素組成,每個元素都具有相同數據類型 數組命名時名稱與[ ]可以隨意排列,但聲明的二維數組中第一個中括號中必須要有值,它代表的是在該二維數組中有多少個一維數組 Java中,數組是一種對象,不是基本數據類