原创 String比較中==和equal()的區別

 解釋一下==號,他比較的是一個對象在內存中的地址值, 比如2個字符串對象 String s1 = new String("str"); String s2 = new String("str"); 如果用==號比較,會返回false,因

原创 Java中break跳出多層循環

衆所周知,在Java語言中,break的作用是強制跳出當前的循環,不再執行剩餘的代碼,但是,break的作用只是跳出當前的循環,當處於嵌套的多層循環時,使用break也只能跳出最內層的循環,而當我們需要跳出整個的循環體時,我們就需要採用使

原创 Android中canvas畫圖的簡單應用

在最近的Android的實驗中用到了繪製圖形,於是簡單的學習了一下利用canvas進行2D圖形的簡單繪製,一下是個人的總結,以便日後翻看。 其中,有三個重要的東西: Bitmap、Canvas、Paint 以實際生活中的繪畫過程進行類比

原创 局部變量被內部類訪問時必須用final修飾的問題

今天隨手寫了點東西,又遇到了這個問題,就是在當內部類想要訪問局部變量的時候 ,Java就要求該局部變量必須用final關鍵字進行修飾。之前寫程序的時候經常遇到這樣的問題,當時只是奔着快點結局問題的目的也沒仔細的思考它本質的原因。 但是我想

原创 QT中的2D繪圖的總結

因爲QT屬於現學現用,由於要用到QT 2D繪圖,所以臨時學習了一下,當然只是淺嘗輒止,並沒有對其進行深入的研究,只是能作爲一個工具去使用去完成一定的任務,現在記錄下來以便以後用到時可以快速的撿起。 QT中的2d 繪圖,我們不得不提到一個

原创 使用QT 2D繪圖實現窗體的陰影效果

在常見的桌面的商業軟件中,我們很容易見到窗體的陰影效果,這是爲了使窗體具有脫離桌面的感覺。 爲了實現這種效果,其實我們有很多的方法,常見的比如利用ps做的具有陰影的圖片做背景,現在我們利用編程的方法來實現。 下面直接貼代碼,非常簡單。

原创 HashMap和HashSet的底層實現

HashMap和HashSet是Map接口、Set接口常用的實現類,因此研究這兩個實現原理有助於更好的使用它們,並理解他們的區別。 下面先來分析HashMap的底層實現。 Map中存儲的是<Key,value>對,每個<Key,value

原创 Java中static鍵字的思考以及使用static創建單例模式

Java中static關鍵字可以作用在成員變量和成員函數上可以是看作是一種所屬關係的聲明,即被static修飾的成員變量和成員方法是屬於類的,而不屬於類的實例化對象。 從內存分配上來看,被static修飾的成員變量在類成功加載後就已經爲其

原创 基於數組實現順序存儲的線性表

package com.test.myarraylist; import java.util.Arrays; /**  * 基於數組實現線性表  *

原创 Java斷言Assert的使用以及在Eclipse中使用assert

在JDK 1.4 之後添加了斷言的功能,非常方便開發人員進行調試。Java爲其提供了assert關鍵字來實現該功能。 基本的使用語法是: 我們可以用新的JAVA關鍵字assert來書寫斷定語句。一條斷定語句有以下兩種合法的形式:  ass

原创 Java利用遞歸的方法求整數數組中的最大值

/**  * 利用遞歸的方法來球一個整數數組中的最大值  * 思路就是:遞歸的求解“數組的第一個元素”與“數組中的其他元素的子數組的最大值”的最大值  * @author Administrator  *  */ public clas

原创 Java利用接口和類來實現類似函數指針的功能

package com.test.interfacetest; /**  * 利用接口和類實現函數指針的功能  * @author Administ

原创 Java實現鏈式存儲的線性表

package com.test.mylinkedlist; import javax.swing.border.EmptyBorder; impo

原创 Java常見面試題

 1)transient和volatile是java關鍵字嗎?(瞬聯) 如果用transient聲明一個實例變量,當對象存儲時,它的值不需要維持。例如: class T {          transient int a;  

原创 二分查找的實現

import java.util.*; /** * 二分查找 * 如果有重複的數字則返回該數字在數組中出現的第一次位置 * @author Administrator * */ public class BinarySearc