理論知識 |
代碼演示 |
Java文件: 源文件(.java)和字節碼文件(.class) 通過編寫源文件—>字節碼文件,然後通過JVM運行字節碼文件 當創建一個java文件後,如果此類前面有public修飾的話,類名字要和文件名相同;在一個文件中可以定義多個類,但是只能有一個類前面有public修飾其餘都不可以有public |
public class review{ } class A{ } class B{ } |
Main方法: Public static void main(String [] args) main 方法是無返回類型的,所以在main 方法中是不可以有return關鍵字的 |
public static void main(String[] args) { } |
輸出語句: System.out.print(); Print()和println()的區別: 第一個不帶換行,第二個有換行。 如果說用print()想達到println()的效果,可以用“\n”來實現 |
System.out.print("\n"); System.out.println(); |
輸入語句: 1. 先倒入一個包 2. 定義Scanner類的對象 3. 完成從控制檯的輸入 |
import java.util.*; 或 import java.util.Scanner; input.next(); //從控制檯輸入的字符串 input.nextDouble();//從控制檯輸入的雙精度浮點型 |
數據類型: 1. 引用數據類型: 自定義類
2. 基本數據類型: 數值型: Int double 非數值型:String char Boolean
引用數據類型和基本數據類型的區別是: 引用數據類型有方法,而基本數據類型沒有方法
|
1. String str = new String(“我是一個字符串”); String str1 = “我也是一個字符串”;
Str.equals(“想要比較的字符串”) Str.equalsIgnoreCase() //比較字符串是否相當,忽略大小寫 Str.substring(); //截取字符串 Str.indexOf() //索引字符第一次出現的位置 Str.lastIndexOf() //索引字符最後一次出現的位置
自定義: Class A{自定義的類} A a = new A(); a.方法(); 2.int a = 123; Double d = 12.5; Boolean b = true; Char c = ‘a’; |
類型轉換: 1.顯示類型轉換(強制類型轉換) 從大的-->小的 2.隱式類型轉換(自然轉換) a.兩種數據類型要兼容 b.從小的à大的 |
1. double d = 12.3; Int a = (int)d;
2. int b = 13; double d = b; |
運算符: 關係運算符、賦值運算符 算術運算符、邏輯運算符 |
關係運算符 > < >= <= !=(不等於)==(是否等於) 賦值運算符 = 算術運算符 + - * / %(求餘) ++(自加1) --(自減1) 邏輯運算符 &&(並且) || (或者) !(非) |
分支結構: If- else if – else 條件判斷的順序要從小到大 或是 從大到小 Switch(表達式){ //int char Case 常量: //Int char 語句; Break; Default: 語句; Break; }
區別: If-else 是區間判斷 Switch 是等值判斷 |
int money = 1000; if(money > 100){ System.out.println("奔馳"); }else if(money > 50){ System.out.println("寶馬"); }else if(money > 10){ System.out.println("雪弗來"); }else{ System.out.println("啥也不買,繼續賺錢"); } int money = 1000; //注意變量的類型 switch(money){ case 100: System.out.println("奔馳"); break; case 50 : System.out.println("寶馬"); break; case 10: System.out.println("雪弗來"); break; default: System.out.println("啥也不買,繼續賺錢"); } |
循環結構: For、while、do-while 區別: 變量初始化 ① While(條件判斷){ ② 語句; ③ 變量更新;//避免死循環④ }
變量初始化 ① Do{ 語句;② 變量更新;//避免死循環③
}while(條件判斷); //注意有分號 ④
① ② ④ For(初始化;條件判斷;變量更新){ 語句; ③ }
注意: 當初始值相同,條件判斷相同的情況下,while 、do-while 、for的執行次數都是相同的, 但是當初始值第一次都不滿足條件時,do-while至少執行一次 |
int i = 1; while(i<=5){ System.out.println("i=" + i); i++; } int i = 1; do{ System.out.println("i=" + i); i++; }while(i<=5);
for(int i=1; i<=5; i++){ System.out.println("i=" + i); } 注意:for循環裏的三個表達式都可以省略,但“;”是不可以省略的 |
跳轉關鍵字: Break 結束循環,跳出循環結構 Continue 結束當前循環,進入下一次循環
但是: 如果在循環結構中有switch結構,那麼break先跳出的是switch結構 |
for(int i=1; i<=5; i++){ if(i+1 >4){ break; } } for(int i=1; i<=5; i++){ if(i+1 < 4){ continue; } System.out.println("看看我是什麼時候能輸出"); }
for(int i=1; i<=7; i++){ switch(i){ case 1: case 2: case 3: System.out.println("喝粥"); break; default: System.out.println("吃鹹菜"); } } |
數組: 1.定義: 1. 數據類型 [] 變量名 = new 數據類型[分配空間長度];. 2. 數據類型 變量名[] = new 數據類型[分配空間長度]; 2. 賦值: 參看右側代碼
3. 數組求長度: Length (是屬性)
4. 數組元素如何遍歷: 通過下標索引數組中每一個元素 但注意: 數組的下標最大值是:數組長度-1 數組下標是從 0 開始
5. 數組排序: 參看右側代碼
6. 排序 參看右側代碼 |
1. 定義: Int [] arr = new int[5]; Int arr [] = new int[5];
2. 賦值: a. Int [] arr = new int[]{1,2,3}; b. Int [] arr = {1,2,3,4} c. Int [] arr = new int[4]; Arr[0] = 2; Arr[1] = 3; …… 3. 長度 Int [] arr = new int[]{1,2,3}; Arr.length; è 3
4. int [] arr = new int[]{1,2,3,4,5}; for(int i= 0; i<arr.length; i++){ System.out.println(arr[i]); } 5.//擂臺法 int [] arr = new int[]{19,21,3,14,5}; int max = arr[0]; //設置一個擂臺 max for(int i= 1; i<arr.length; i++){ if(arr[i] > max){ max = arr[i]; } } System.out.println("max=" + max);
6.排序 //正序輸出 int [] arr = new int[]{19,21,3,14,5}; Arrays.sort(arr); //sort中加入要排序的數組名 for(int i= 0; i<arr.length; i++){ System.out.println(arr[i]); }
//倒序輸出 int [] arr = new int[]{19,21,3,14,5}; Arrays.sort(arr); //sort中加入要排序的數組名 for(int i=arr.length -1; i>=0; i--){ System.out.println(arr[i]); } |
字符串: 1.字符串定義: String str = new String(“您好:”); String str = “好好學習”
2. 字符串的方法調用 參看右側代碼 |
方法調用演示 //字符串索引 String str = "hello_world"; int position = str.indexOf("o"); //索引的是第一次出現的字符串或是字符 System.out.println(position); //索引的字符串的下標從 0 開始計算
//字符串索引 String str = "hello_world"; int position = str.lastIndexOf("o"); //索引的是最後一次出現的字符串或是字符 System.out.println(position); //索引的字符串的下標從 0 開始計算
//字符截取 String str = "hello_world"; String newStr = str.substring(3,6); //第一個參數下標從0開始計算 第二個參數下標從1開始結算 System.out.println(newStr); à lo_
String str = "hello_world"; String newStr = str.substring(3); //第一個參數下標從 0 開始計算,將後面的所有字符都取出 System.out.println(newStr);àlo_world
//如何遍歷字符串中的每一個字符 String str = "hello_world"; for(int i=0; i<str.length(); i++){ System.out.print(str.charAt(i) + "\t"); } System.out.println("\n-------------"); for(int i= 0 ; i< str.length(); i++){ System.out.print(str.substring(i, i+1) + "\t"); }
//字符連接 String str1 = "hello"; String str2 = "world"; String newStr = str1.concat(str2); //用concat連接之後,生產一個新的字符串
StringBuffer sb = new StringBuffer(); sb.append("hello"); sb.append("world"); //hello 和 world 都會加入sb對象之中,並不像String 類型的concat方法
StringBuffer 類型 à string類型 調用 toString() Sb.toString() |
類和對象: 1.類和對象的關係: 類是一類具有相同屬性和方法的對象的集合,我們會將這類對象裏的屬性和方法提取出來,寫入類中。 2.如何定義一個類 參看右側代碼 3.如何定義類的屬性和方法 參看右側代碼 注意: 在定義類的方法的時候,方法的返回類型有兩種情況: 1.無返回類型 void 那麼此時,方法中不要出現return關鍵字 2有返回類型 String/Int …. 方法的返回類型,取決於return後面表達式的返回類型
◆ void 和 return 不可以同時出現在方法中
★ 方法是否帶有參數: 1.方法所帶的參數個數可以無限個,但彼此間要用 “,” 逗號來分隔, . 2. 方法所帶的參數類型和方法的返回類型無關 3.方法定義的過程中,是否帶參數和方法是否有返回值或無返回值,沒有固定格式,是根據具體設計代碼而定
4. 方法調用 如果在兩個方法在一個類中,那麼方法之間可以直接調用。 如果兩個方法在兩個類中,那麼方法之間,必須先要實例化對象纔可以調用
|
定義類: Public class 類名{} 建議類名的首字母大寫
定義類的屬性和方法 Public class Person{ Int age; String name;
Public String eat(){ Retrun “我喜歡吃米飯”; } }
方法返回類型: public int getAge(){ return 10; //因爲return後面 10 是整數類型 所以此方法的返回類型要求Int型 }
public void show(){ //此方法爲無返回類型 int a = 10; int b = 19; System.out.println("無返回類型"+ (a+b)); }
方法帶參數 Public void showArg(int a, Char b, String c){ System.out.print(a + b + c); }
Public String showArg(int a, Char b, String c){ Return a + b + c; }
//同一個類中的方法調用 public class review{ public int a(){ return 1; } public int b(){ a(); //直接調用本類中的a方法 return 8; } }
//不同類中的調用 public class Hello{ public int a(){ return 1; } }
class Other{ public void b(){ Hello h = new Hello(); //先實例化對象 h.a(); //對象調用方法 } } |
包: 定義包: Package 包名
但注意,包的定義一定要在第一行 |
package com.accp.dlc; import java.util.*; public class Hello{ public int a(){ return 1; } } |
JAVA 基礎
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.