Java學(xué)習(xí).第一周


Java學(xué)習(xí)的第一周很快過去,課程從Java的運行環(huán)境和對應(yīng)軟件用法開始,到現(xiàn)在已經(jīng)講到算法一章的遞歸函數(shù),隨著課程的深入,以前不扎實的基礎(chǔ)也有了明顯的進步。
那么分小結(jié)回顧一下之前一周的內(nèi)容

Java基礎(chǔ)知識


** 1.Java運行環(huán)境**

  • JDK 和 JER的安裝
  • windows有很多環(huán)境變量,路徑去path方面找

Java語法基礎(chǔ)

1. 注釋

  • //注釋只能打一行
  • /注釋可以打很多行/

** 2. 方法和語句**

  1. 類里面包含多個方法
  • i.方法包括方法
public    int       sum(int a,int b){}
修飾符    方法聲明          方法體
  • ii.void不需要返回值,int需要return,返回類型和聲明的一致
    ** 3. 標識符**
  • 不能用關(guān)鍵詞,第一個字母是字母或者_或者$,后面的字符可以是任何字符或者數(shù)字
    標識符大小寫敏感,命名規(guī)范——駝峰命名法
  • i.多個單詞直接連接在一起,中間不用下劃線或者橫杠等
  • ii.類名每個單詞首字母大寫
  • iii.變量名和方法名第一個字母小寫,還是使用駝峰命名法
  • 盡量讓名字直觀易懂

比如BodyMassIndexCalculator

** 4. 數(shù)據(jù)**

  • 變量需要先定義才能使用
  • 常量定義后就不能再改變

final int ss=45;

** 5. 數(shù)據(jù)類型**

  • 基本數(shù)據(jù)類型有8種(基礎(chǔ)類型沒有方法,屬性)
byte short int long char float double  boolean
8     16    32  64   16   32    64  1bit used in 32 bit integer

八種基礎(chǔ)數(shù)據(jù)類型可以轉(zhuǎn)換為對應(yīng)的類,轉(zhuǎn)換后可以有方法

Integer--int       Byte--byte 
Short--short       Long--long 
Double--doubule    Float--float 
Boolean--boolean   Character--char

數(shù)據(jù)類型裝換

  • 數(shù)字之間,低精度到高精度可以自動轉(zhuǎn)換
  • 從高精度到低精度不能自動轉(zhuǎn)換 age=(int)shenGao可以強制轉(zhuǎn)換

** 6. 屬性**

System.out.println
類     屬性    方法

方法里面變量為局部,最外面的變量為全局變量


運算符


  • 數(shù)字運算符 比較運算符 邏輯運算符

** 1. 邏輯運算符%**

% < >&& || & |

** 2. 程序的三種執(zhí)行方式**

  • 順序執(zhí)行
  • 分支執(zhí)行
  • i. if ;else if ;else
  • ii.switch
  • 循環(huán)執(zhí)行
  • i. for
  • ii.while

** 3. 循環(huán)**

  • for(int i=1;i<=100;i=i+1){}
  • while(條件){}//先判斷再做
  • do{}while() //先做再判斷

字符串


** 1. 字符串的拼接**
字符串的拼接基本方法有兩個:

  1. 使用 + 號,如
  2. 使用 .concat
  3. 但如果要運用大量字符串的拼接就要考慮性能
    可以考慮使用

StringBuffer,Stringbuilder

** 2. String的大量拼接**

  1. StringBuffer
    這是一個特殊的string類,它將string封裝起來,從頭到尾只有一個string在運行
StringBuffer sb=new StringBuffer("0");
    for(int i=1;i<10000;i++){
        sb.append(i);
    }
  1. Stringbuilder
StringBuilder sbuilder=new StringBuilder("0");
    for(int i=1;i<10000;i++){
        sbuilder.append(i);
    }
  • Stringbuffer和Stringbuilder在拼接過程中使用同一個對象,所以效率高(append方法)
  • StringBuffer是線程安全的,會防止多個線程同時訪問String,它增加了額外的防護,

** 3. String的查找和替換**
1.查找 System.out.println(str1.indexOf("are"))
2.替換 String str2 =str1.replace('H','h');
String str3 =str1.replace("you","me");
3)更加復(fù)雜的查找和替換將會用到 正則表達式Regex


數(shù)組


** 1. 數(shù)組的概念,聲明和創(chuàng)建**

int[]nums={4,5,3,5};
String[] names=new String[10];
String[] names=new String[10];

  • 直接用System.out.println(names)打印出來的是類名@地址

** 2. 數(shù)組的訪問和遍歷**

  1. nums[]
  2. 注意數(shù)組下標越界問題,會顯示以下異常
java.lang.ArrayIndexOutOfBoundsException

** 3. For Each語句**

int[]nums={4,5,3,5};
        for(int num:nums){
            System.out.println(num);
        }

這種方式只能運用在數(shù)組,list等集合數(shù)據(jù)結(jié)構(gòu)上,結(jié)構(gòu)簡介但沒有原先的for循環(huán)靈活
Arrays.sort()可以排序數(shù)組,如果是字符串會按字母順序,如果是數(shù)組會按大小順序

** 4. 二維數(shù)組**

int [][] nums ={{2,3,4},{3,2},{9}};
String [][] names= new String[][]{{"tom","jack"},{"Alice","John"},{"Kate","Lily"}};
String [][] names2=new String[4][3];

names[a][b] a為行,b為類


算法


1.算法概念

  • 算法簡單來說是解決問題的思路和步奏,對程序員至關(guān)重要
  • 算法是獨立于編程語言的

** 2. 遞歸**

  1. 遞歸算法概念 -recursion
  • 遞 是傳遞給自己,自己調(diào)用自己
  • 歸 是退出條件,在某些條件符合的時候,停止調(diào)用自己,如果沒有退出條件會出現(xiàn)死循環(huán),程序上會出現(xiàn)
java.lang.StackOverflowError

圖解

Java基礎(chǔ).png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,697評論 18 399
  • 第一個Java程序 變量: 變量是數(shù)據(jù)的存儲空間 定義變量的語法:類型 變量名 = 值 被final修飾的變量只...
    a04b20daaf33閱讀 342評論 0 1
  • [TOC] StringBuffer類 StringBuffer類概述及其構(gòu)造方法 StringBuffer類概述...
    lutianfei閱讀 534評論 0 1
  • java筆記第一天 == 和 equals ==比較的比較的是兩個變量的值是否相等,對于引用型變量表示的是兩個變量...
    jmychou閱讀 1,648評論 0 3
  • 親朋好友聚餐,少不了以酒為樂。但酒喝多了會傷身,誰都知道。不得不飲酒的場合,懂得怎么樣去保護好自己的身體,很重要。...
    鏡心源閱讀 595評論 1 3

友情鏈接更多精彩內(nèi)容