原创 ExpandableListView

ExpandableListView顧名思義,爲可展開的ListView(相當於ListView的每一行都是一個可以點擊並展開的ListView) 相關知識: ExpandableListView控件; ExpandableListVie

原创 異步加載基礎

AsyncTask(異步加載)的作用 1.在子線程中更新UI(Andriod作爲一個單線程模型,不應將耗時操作放在主線程中) 2.封裝,簡化異步操作 構建AsyncTask子類的參數 AsyncTask< Params,Progress,

原创 堆排序(優先隊列)

堆排序與其他排序相比的優勢在於,在排序時,可將數組本身作爲堆,因此無需任何額外空間。 堆排序採用兩段循環代碼實現了排序。第一段for循環構造了有序的堆。第二段while則是將逐步將堆摧毀,並實現整體的排序。 核心代碼如下: public

原创 SharedPreferences

創建SharedPreferences SharedPreferences pref = getSharedPreferences("myDate", Context.MODE_PRIVATE); //初始化,並設置key以及權限(MOD

原创 ViewPager

應用到的知識點爲 ViewPager控件 ViewPager的適配器:PagerAdapter(可新建一個class繼承或者直接用) ViewPager監聽接口:OnPageChangeListener (一般重寫onPageSele

原创 一些零碎的知識點

3. Andriod的文件創建 MODE_APPEND 的功能是判斷是否有該文件,如果有在後面添加,而不是擦除 MODE_PRIVATE 該文件只能被創建他的應用訪問(控制訪問權限) 在內置目錄默認地址下創建文件: File file

原创 (算法)快速排序

快速排序是一種分治的排序算法。它將一個數組切分爲兩個子數組,並實現獨立排序(當獨立排序完畢,整個數組也就自然有序了)。 這次主要談談快速排序如何切分(將數組分成兩個兩個子數組):我們先要選擇數組中的一個元素,比如a[n],將其設爲key

原创 (算法 第四版)排序算法類的模板

package algorithm; import edu.princeton.cs.algs4.In; public class Example{ /* * 整理所有元素,使其有序排列 */ p

原创 Git入門

注:本文圖文參考整理自(親測沒有問題) 菜鳥教程: http://www.runoob.com/w3cnote/android-tutorial-git-repo-operate.html 廖雪峯的官方網站: https://ww

原创 ListView之適配器

注:本文知識整理自Mooc的相關課程,主要整理適配器爲:ArrayAdapter,SimpleAdapter,BaseAdapter. . ArrayAdapter public class MainActivity extends A

原创 Gson解析

注: 1.本文代碼需導入Gson.jar包纔可正常編譯 下載地址:http://code.google.com/p/google-gson 2.本文以豆瓣api(快速入門的例子)返回的josn數據爲例,具體json可以看網頁: h

原创 基於堆的優先隊列

優先隊列由一個基於堆的完全二叉樹表示,存儲與a[1~N]中,a[0]沒有使用。 插入元素:將新元素加到數組末尾,增加堆的大小,並讓元素上浮到合適的位置。 刪除最大元素:我們將最後一個元素與第一個元素(最大元素)交換,並將最後一個(最大元

原创 SQLite的相關知識

在Andriod中如何使用SQLite - SQLiteDatabase 主要提供了一些管理SQLite數據庫的類 提供創建,刪除,執行SQL命令,並執行其他常見的數據庫管理任務的方法 . 主要方法如下: db.exec

原创 http傳遞參數信息和傳遞方式post、get

注:本文爲慕課網課程知識整理 step 1: 1.打開Java EE eclipse 2.Window > Preferences > Server > Runtime Environment >Add > 選擇Apache Tomca

原创 三向切分的快速排序

在排序的實際應用中,經常會出現大量重複元素的數組,比如生日排序。而在這種情況下,快速排序仍有巨大的改進空間,如:一個元素重複的子數組就不需要繼續排序了,但算法卻仍會將它繼續切分爲更小的數組,三向切分的快速排序 正是基於此對 快速排序 的作