java基礎-demo(黑馬程序員)


-------android培訓、java培訓、期待與您交流! ----------

1如果你覺得你很熟悉java,那麼你認識這些關鍵字嗎?

abstract assert boolean break byte
case catch   class continue
default do double else enum
extends final finally float for
if implements import instanceof int
interface long native new package
private protected public return strictfp
short static super switch synchronized
this throw throws transient try
void volatile while

如果不出意外的話,我想會有assert,native,strictfp你不會很熟悉。但除此之外const和goto也是關鍵字,並且爲保留字!

假如你這樣int const=2;//那麼你會有編譯錯誤!java不用這兩個值,也不許你用!

native的作用是你要假如java外的編程語言的話,就要用到她了。assert是斷言的標記符。strictfp是用於標記方法的,精確標記符。實際上以上的關鍵字要認識,有些不是很常用。

2第一個demo是hello java。

	public static void main(String[] args) {
		
		System.out.println("hello java");
	}
你會認爲太簡單嗎?那麼public可以換成private嗎?會出現什麼情況?

在java語言規範中有main函數必須爲public,但是jvm的規範中沒有。也就是說有的jvm或許可能編譯通過!只是一個可能哦。要看jvm的技術細節了。 

3當你寫下short的demo

	short lit;
	lit=lit+1;//Type mismatch: cannot convert from int to short
你會認爲他很正確嗎?你試一下,由於lit爲short,1在這裏爲int型的。會有convert轉換異常!太讓人恍然大悟了!

3你知道if()裏面是什麼類型的嗎?

		int flag=1;
		if(flag==1)
		System.out.println("right");
		int flag=1;
                if(1==flag)//你知道嗎?c/c++高手是這樣寫代碼的!但在java中flag=1再也不會騙過編譯器了!

		Boolean n=new Boolean(true);
		if(n)
		System.out.println("right");
Boolean的對象也是可以的!一定要活學活用!不要死記憶概念!

4你知道switch()裏是什麼嗎?

                int flag=0;
		switch(flag)
		{case  0:System.out.println("right");
			break;//關於break你還會丟嗎?如果丟了,會有right和wrong兩個結果!
		 case   1:System.out.println("wrong");
		        break;
		 default :System.out.println("never");
		}
你知道switch是隻有byte,short,int,char如果是其他的會報錯!如果爲String的話Type mismatch: cannot convert from int to String,又是這個異常!Long你試一下!如果是Integer的話你知道了嗎?

5你知道怎麼去測試二維數組的大小麼?

		int[][] array=new int[3][4];
		System.out.println(array.length);
是這樣嗎?你會得到3!好的怎麼樣去計算呢?你可以先計算維度i,利用維度i計算數組大小!

		int i=array.length;
		int sum=0;
		for(int j=0;j<i;j++)
		{
			sum=sum+array[j].length;
		}
		System.out.println(sum);

你明白了沒?array[i].length計算的是該維度下的長度!

6 break和continue怎麼跳出循環?我覺得是break跳出這層循環!然後continue繼續這層循環。好吧這些大家都知道。怎麼用break跳出多個循環?用標籤!

                1.loop:
		for(int i=0;i<10;i++)
		2.loop:	
		for(int j=0;j<10;j++)
		{
			if(j==1)
			{
			System.out.println("haha");
			break loop;
			}
		}
當你測試這個用例的時候會發現loop在1時會打印1個haha而在2的時候有10個!break+標籤會跳出標籤處的循環!你瞭解嗎?
7if語句的奇怪waring

	public static int sign(int n)
	{
	  if(n<0)
    	    return 0;
         else if(n>0)
    	    return 1;
         else if(n==0)
    	    return 0;
	}
你能忍受這個警告?竟然是由於必須返回一個值!雖然你認爲你的判斷完美無缺,但是java編譯器並沒有你那麼聰明!你需要改的是最後一個else if換爲else!

如果你感覺我的demo幫到你了,謝謝。用心思考問題。



------- android培訓、java培訓、期待與您交流! ----------


發佈了27 篇原創文章 · 獲贊 1 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章