原创 設計模式 : 外觀模式、策略模式 對比

參考: 設計模式 : 工廠模式 設計模式 : 代理模式 和 裝飾模式 對比 設計模式 : 外觀模式、策略模式 對比 準備: 接口 public interface Shape { void draw(); }

原创 設計模式 : 工廠模式

準備 public interface People { void say(); } public class Man implements People { @Override public void

原创 leetcode 39 : 給定一個無重複元素的數組 candidates 和一個目標數 target ,找出 candidates 中所有可以使數字和爲 target 的組合。

import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * 題目: * 組合總和 -- leetcode 39 *

原创 經典動態規劃:打家劫舍系列問題House Robber盜賊

參考: leetcode 337. 打家劫舍 III java 經典動態規劃:打家劫舍系列問題 【LeetCode】打家劫舍系列(I、II、III) 線性村莊 import java.util.Arrays; /** * ht

原创 SurfaceView 與 TextureView

類的關係: SurfaceView (android.view) GLSurfaceView (android.opengl) SphericalSurfaceView (com.google.androi

原创 activity-alias

參考: activity-alias屬性的使用 dingProg /NetworkCaptureSelf 用途 activity-alias 與 meta-data 配合使用。meta-data作爲入口標記,可以實現類似“

原创 android studio上傳GitHub併發布jetpack

如何通過Android Studio將項目發佈到GitHub並同步到JitPack倉庫? jetpack官網 android集成jetpack官網指南

原创 debugImplementation、releaseImplementation、testImplementation

依賴配置有:implementation、provided、api、apk、compileOnly、runtimeOnly、渠道名+Compile, 差異主要在於構建內容和參與構建的時機,多樣的配置方式滿足了開發者的花樣需求,具體

原创 HashMap 與 hashtable : null鍵或null值對比

private fun hashtable() { //key value 都不能爲null val hashtable = Hashtable<String?, String?>() // hashtab

原创 HashMap / SparseArray / ArrayMap

HashMap 參考: HashMap詳解以及源碼分析 鏈表實戰(帶圖分析) 我畫了近百張圖來理解紅黑樹 Hash算法解決衝突的四種方法 SparseArray 參考: SparseArray詳解及源碼簡析 其內部主要通過 2

原创 gradle : 不同環境, 不同app名稱

android { compileSdkVersion 28 //開發 def ENVIRONMENT_DEV = "\"https://www.baidu.com/\""; //生產 d

原创 設計模式 : observer(觀察者模式)

摘自: JamesZBL / java_design_patterns youlookwhat / DesignPattern 介紹 定義了對象之間的一對多的依賴,這樣一來,當一個對象改變時,它的所有的依賴者都會收到通知並

原创 設計模式 : Builder構造者模式

as插件: 摘自: JamesZBL / java_design_patterns 示例: statusview/StatusViewBuilder 創建者模式 ( Builder ) 用途 將一個複雜對象的構造與它分開,

原创 android : inputMethodManager內存泄露

關於華爲inputMethodManager內存泄露 kotlin版本: //override fun onDestroy() { // CleanLeakUtils.fixInputMethodManagerLeak(th

原创 md2all與chrome將markdown轉爲PDF

一: md2all md2all地址 推薦使用chrome打開md2all,修改樣式後保存爲HTML格式即可。 這裏我設置的大小爲 /* 右邊爲最終生成文件的預覽。 此樣式,主要用於設置整體背景,內容的內、外邊框等, 側重於文