原创 android圓角ImageView的幾種實現方式

前言 好長一段時間沒寫博客,繼續吧。今天突然想起金三銀四的時候,面試遇到的一個問題:如何實現圓角imageView。所在公司只用了其中一種方式,今天總結一下: 第一種:Glide加載圖片自帶api 如果使用Glide加載圖片,那麼,這個庫

原创 什麼是API,SDK?它們之間有什麼關係?

隨着軟件規模的日益龐大,常常需要把複雜的系統劃分成小的組成部分,編程接口的設計十分重要,程序設計的實踐中,編程接口的設計首先要使軟件系統的職責得到合理劃分,良好的接口設計可以降低系統各部分的相互依賴,提高組成單元的內聚性,降低組成單元間的

原创 Java除法不精確引入BigDecimal

前言: 之前在項目裏遇到一個問題:169/100=1.0 int nPtCount = 169; final int MAX_ROUTE_PT = 100; double lfDivide = 0; if (nPtCount > MA

原创 棧、堆、方法區之間的關係

先放一張圖: 1.棧內存中放哪些東西? 基本類型的變量,例如int a=3中的a; 對象的引用變量,例如Thread t=new Thread();中的t。 當在代碼塊中定義一個變量時,Java就在棧中爲這個變量分配內存空間;當超過變量

原创 Android基礎--tools:context=".TestActivity作用

最近學習JetPack,看到這麼一句話,其實以前也有,那麼記錄一下到底什麼意思: Android開發中在佈局文件裏面都會有如下面的內容: <LinearLayoutxmlns:android="http://schemas.androi

原创 數據結構Queue:poll、offer、element、peek

隊列是一種特殊的線性表,它只允許在表的前端(front)進行刪除操作,而在表的後端(rear)進行插入操作。進行插入操作的端稱爲隊尾,進行刪除操作的端稱爲隊頭。隊列中沒有元素時,稱爲空隊列。 在隊列這種數據結構中,最先插入的元素將是最先被

原创 數據結構Stack:關係以及方法

Stack簡介 Stack是棧。它的特性是:先進後出(FILO, First In Last Out)。 java工具包中的Stack是繼承於Vector(矢量隊列)的,由於Vector是通過數組實現的,這就意味着,Stack也是通過數組

原创 Java基礎之移位運算,爲什麼高位補1?

首先,瞭解原碼、反碼、補碼: 原碼: 使用高位作爲符號位。最高位爲0時表示正數,最高位爲1時則表示爲負數。其餘位使用此數字數值本身二進制的絕對值表示。 反碼: 使用高位作爲符號位。最高位爲0時表示正數,最高位爲1時則表示爲負數。正數的反碼

原创 Android線程間通信的幾種實現方式

1. 通過Handler機制: private void one() { handler=new Handler(){ @Override public void hand

原创 Java實現二分法(折半)查找數組中的元素

二分查找 算法思想:又叫折半查找,要求待查找的序列有序。每次取中間位置的值與待查關鍵字比較,如果中間位置的值比待查關鍵字大,則在前半部分循環這個查找的過程,如果中間位置的值比待查關鍵字小,則在後半部分循環這個查找的過程。直到查找到了爲止,

原创 RecycleView中使用Glide加載圖片防止加載錯亂

前言 使用recyclerView時遇到了圖片錯位的問題,這個問題網上已經討論的很成熟,謹以此文章做個總結。 問題產生原因 根本原因: 因爲有ViewHolder的重用機制,每一個item在移出屏幕後,都會被重新使用以節省資源,避免滑動卡

原创 Java筆試題-List l = new List()

前言: 最近遇到的一道很基礎的題,有時候大家可能離開了編譯器就不行了。 import java.util.List; /** * * @author catchegg * create date: 2018年6月1日 下午10

原创 必考題:子類繼承父類,初始化以及方法調用順序

前言: 最近重投簡歷,一家公司的筆試題,就是子類繼承父類,初始化順序以及方法的調用順序,很遺憾,我做錯了。所以,記錄在這裏,希望以後不要再錯。 程序: // 父類 public class ParentA { static {

原创 各種有return的情況下try-catch-finally的執行順序

結論: 1、不管有沒有出現異常,finally塊中代碼都會執行; 2、當try和catch中有return時,finally仍然會執行; 3、finally是在return後面的表達式運算後執行的(此時並沒有返回運算後的值,而是先把要返回

原创 形象生動的SpringBoot和SpringMVC的區別

spring boot只是一個配置工具,整合工具,輔助工具. springmvc是框架,項目中實際運行的代碼 Spring 框架就像一個家族,有衆多衍生產品例如 boot、security、jpa等等。但他們的基礎都是Spring 的