原创 Java異常處理機制

異常指不期而至的各種狀況,如:文件找不到、網絡連接失敗、非法參數等,異常是一個事件,它發生在程序運行期間,干擾了正常的指令流程。。Java通過API中Throwable類的衆多子類描述各種不同的異常。因而,Java異常都是對象,是

原创 運算符優先級

有一次寫程序 判斷了 (!a&b) 這樣如果想先計算a&b是需要加括號的

原创 記一次坑爹的ReactNative應用集成推送

公司有個需求,實現純RN應用的接收推送後的界面跳轉,推送使用的是阿里雲推送 坑的地方至少有兩個。 如何知道應用是否已經啓動了呢? 如何將信息發送給RN端呢? 首先第一個問題相對來說還是比較好解決的,用下面的代碼就可以實現。

原创 醜數

如題 把只包含因子2、3和5的數稱作醜數(Ugly Number)。例如6、8都是醜數,但14不是,因爲它包含因子7。 習慣上我們把1當做是第一個醜數。求按從小到大的順序的第N個醜數。 public class Solution

原创 計算機網絡

端系統通過通信鏈路和分組交換機鏈接到一起。通信鏈路由不同類型的物理媒體組成。這些物理媒體包括同軸電纜、銅線、光纖和無線電纜譜。不同的鏈路能夠以不同的速率傳輸數據,鏈路的傳輸速率以比特/秒度量。當一臺端系統要向另一臺端系統發送數據時

原创 在一個字符串(1

public class Solution{ HashMap<Character,Integer> map = new HashMap<>(); public int FirstNotRepeating

原创 HashMap實現原理

HashMap是數組+鏈表實現的,既然用到hash散列,那麼肯定不可避免的會出現衝突問題,HashMap解決衝突的方法是拉鍊法,因爲這裏有用到數組,那麼當容量不足的時候就需要進行擴容操作了,在HashMap中有個術語叫衝突,當衝突

原创 Android 7.0新簽名機制

由於之前的打包機制是採用Python進行打包的,導致打包後的apk在7.0上無法進行安裝,特此研究下android7.0的簽名機制 Android7.0加強了簽名的加固,導致在新的簽名機制下無法使用修改apk文件的方式進行多渠道打

原创 插件化

動態加載APK 資源加載 動態加載資源。 通過反射調用 代碼加載 類加載機制 java當中的字節碼添加到虛擬機, dexclassLoader可以加載apk文件中的,用於動態加載和熱更新 pathclassloader

原创 androidStudio簡析

AndroidStudio以Model的形式填充工程 一個model就相當於一個Eclispe下的工程,每個Model中會有個Gradle文件,每個工程也會有一個Gradle文件,還會有Setting.gradle文件

原创 輸入n個整數,找出其中最小的K個數。例如輸入4,5,1,6,2,7,3,8這8個數字,則最小的4個數字是1,2,3,4,。

如題:劍指offer 輸入n個整數,找出其中最小的K個數。例如輸入4,5,1,6,2,7,3,8這8個數字,則最小的4個數字是1,2,3,4,。 使用堆排序在大批量的排序更快,複雜度NlogM public class Sol

原创 判斷是否是Double

boolean isDouble(String str) { try { Double.parseDouble(str); return true; } catch(N

原创 ReactNative 下使用阿里雲直播的bug

前言 前幾天受同事之拖,在ReactNative環境下,引用阿里雲直播sdk,本以爲是一個很簡單的問題,結果確踩了個大坑。 阿里雲直播sdk 地址阿里雲直播sdk地址 大概就是下圖這種情況,大概意思就是說ReactNative裏有

原创 一個數除以0一定報錯麼

今天看到一個好玩的事,一個數除以0一定報錯麼 上小學的時候,老師告訴我們,0是不能做除數的,同樣在我們寫程序的時候,編譯器也會報異常:ArithmeticException:/by zero (除以0異常) 但是 一定會異常麼? 可以試

原创 線程和進程

幾乎所有的操作系統都支持進程的概念,所有運行中的任務通常對應一個進程。當一個程序進入內存運行時,即變成一個進程。進程是處於運行過程中的程序,並且具有一定的獨立功能,進程是系統進行資源分配和調度的一個獨立單位。 一般而言,進程包含如下三個