Java_基础阶段笔记总结汇总
生活随笔
收集整理的這篇文章主要介紹了
Java_基础阶段笔记总结汇总
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、Java簡介
1、Java語言平臺性介紹
2、JDK_JRE_JVM的組成和作用
JVM: Java虛擬機,是專門用來運行Java程序的,但是不能單獨安裝
JRE: Java運行環境,包含JVM(Java虛擬機,是專門用來運行Java程序的)和核心類庫
JDK: Java開發工具包,包含JRE和開發工具
?3、程序開發的步驟
1.HelloWorld
public class HelloWorld {public static void main(String[] args){System.out.println("HelloWorld");}}?二、注釋
//這里是定義一個類,類的名字叫做Demo01ZhuShi, //而且文件名必須和類的名字保持一模一樣,public class 目前是固定寫法,目前記住,后面講解 public class Demo01ZhuShi {/*這里是定義main方法,public static void main(String[] args)是固定寫法main方法是程序的入口*/public static void main(String[] args){/*這是一個輸出語句,用來向控制臺輸出顯示內容的,()中的""里面的內容會被輸出顯示到控制臺上*/System.out.println("zhushi....");} }三、變量
?
public class Demo03BianLiangNotice {public static void main(String[] args){//定義int變量a,并初始化int a = 100; System.out.println(a);//錯誤: 不能在同一個區域({}),定義同名的變量//int a = 200;//System.out.println(a);//定義int變量b,未賦值int b;//System.out.println(b);//錯誤: b中沒有值,不能使用b = 200;//把數字200賦值給變量bSystem.out.println(b);//long c = 6000000000;//錯誤: 6000000000(60億)默認是int類型,但是大小已經遠遠超過int的取值范圍(正負21億)了//System.out.println(c);long d = 6000000000L;//6000000000L: 是long類型的數據System.out.println(d);//錯誤: 大蘿卜不能直接放入小坑中//float e = 6.6;//錯誤: 6.6默認是double類型,占8個字節,不能賦值給4個字節的float變量e//System.out.println(e);float f = 6.6F;//6.6F: 是float類型的數據System.out.println(f);} }四、Scanner類
在獲取三個和尚中的最高身高案例中,身高數據如果由鍵盤錄入,該怎樣實現呢?
import java.util.Scanner;public class ScannerTest {public static void main(String[] args) {//身高未知,采用鍵盤錄入實現。首先導包,然后創建對象。Scanner sc = new Scanner(System.in);//鍵盤錄入三個身高分別賦值給三個變量。System.out.println("請輸入第一個和尚的身高:");int h1 = sc.nextInt();System.out.println("請輸入第二個和尚的身高:");int h2 = sc.nextInt();System.out.println("請輸入第三個和尚的身高:");int h3 = sc.nextInt();//用三元運算符獲取前兩個和尚的較高身高值,并用臨時身高變量保存起來。int temp = h1 > h2 ? h1 : h2;//用三元運算符獲取臨時身高值和第三個和尚身高較高值,并用最大身高變量保存。int max = temp > h3 ? temp : h3;//輸出結果。System.out.println("這三個和尚中身高最高的是:" + max +"cm");} }五、分支結構
5.1 IF
public class IfDemo {public static void main(String[] args) {System.out.println("開始");//定義兩個變量int a = 10;int b = 20;//需求:判斷a和b的值是否相等,如果相等,就在控制臺輸出:a等于bif(a == b) {System.out.println("a等于b");} //需求:判斷a和c的值是否相等,如果相等,就在控制臺輸出:a等于cint c = 10;if(a == c) {System.out.println("a等于c");} System.out.println("結束");} }5.2 循環結構 For
public static void main(String[] args) {//需求:輸出數據1-5for(int i=1; i<=5; i++) {System.out.println(i);} System.out.println("--------");//需求:輸出數據5-1for(int i=5; i>=1; i--) {System.out.println(i);} }5.3 循環結構While
public static void main(String[] args) {//for循環實現打印10次HelloWorldfor(int i=1; i<=10; i++) {System.out.println("HelloWorld");} //定義初始化變量int i = 1;while(i<=10){System.out.println("HelloWorld");//步進i++;} }5.4?循環結構do-While
public static void main(String[] args) {int x=1;do {System.out.println("HelloWorld");x++;} while(x<=10); }5.5循環跳轉
5.5.1 break語句
使用場景:在選擇結構switch語句中 在循環語句中 離開使用場景的存在是沒有意義的
5.5.2 continue語句
使用場景:結束本次循環,繼續下一次的循環 只能使用在循環語句中
六、隨機數Random
//1. 導包 import java.util.Random;public class Demo01_Random {public static void main(String[] args) {//2. 創建鍵盤錄入數據的對象Random r = new Random();for(int i = 0; i < 3; i++){//3. 隨機生成一個數據int number = r.nextInt(10);//4. 輸出數據System.out.println("number:"+ number);}} }七、數組
7.1數組動態初始化
數組動態初始化就是只給定數組的長度,由系統給出默認初始化值。
格式:
數組存儲的數據類型[ ] 數組名字 = new 數組存儲的數據類型[長度];
int[] arr = new int[3];
7.2 數組靜態初始化
在創建數組時,直接確定數組元素。
數據類型[ ] 數組名 = new 數據類型 [ ]{ 元素1,元素2,元素3... };
int[] arr = new int [ ]{ 1, 2, 3, 4, 5};
數據類型[ ] 數組名 = { 元素1,元素2,元素3... };
int[ ] arr? =? { 1, 2, 3, 4, 5};
7.3 數組原理內存圖
JVM的內存劃分:
7.3.1 一個數組內存圖
public static void main(String[] args) {int[] arr = new int[3];System.out.println(arr);//[I@5f150435 }7.3.2?兩個數組內存圖
public static void main(String[] args) {int[] arr = new int[3];int[] arr2 = new int[2];System.out.println(arr);System.out.println(arr2); }?7.3.3?兩個變量指向一個數組
public static void main(String[] args) {// 定義數組,存儲3個元素int[] arr = new int[3];//數組索引進行賦值arr[0] = 5;arr[1] = 6;arr[2] = 7;//輸出3個索引上的元素值System.out.println(arr[0]);System.out.println(arr[1]);System.out.println(arr[2]);//定義數組變量arr2,將arr的地址賦值給arr2int[] arr2 = arr;arr2[1] = 9;System.out.println(arr[1]); }?八、方法
8.1?無參數無返回值的方式
public class Demo04Method {public static void main(String[] args) {System.out.println("main....start....");//調用方法printOu();printOu();System.out.println("main....end....");}//定義一個方法,打印輸出該方法內部的數據(方法內部定義的變量)是否是偶數public static void printOu() {int num = 18;//判斷num是否是偶數if (num % 2 == 0) {System.out.println(num + "是一個偶數");} else {System.out.println(num + "不是一個偶數");}return ;//結束方法,返回到方法的調用處,可以省略的} }8.2?有參數無返回值的方式
public class Demo03MethodParams {public static void main(String[] args) {System.out.println("main...start...");//調用方法printOu(12);printOu(15);System.out.println("main...end...");}/*定義一個方法,該方法接收一個int參數,方法內部打印輸出該數據是否是偶數三要素:1.方法名稱: printOu2.參數列表: int num3.返回值類型: void*/public static void printOu(int num) {if (num % 2 == 0) {System.out.println(num+"是一個偶數");} else {System.out.println(num+"不是一個偶數");}return ;} }8.3?有參數有返回值的方式
public class Demo03MethodParams {public static void main(String[] args) {System.out.println("main...start...");//調用方法boolean result = isOu(15);System.out.println("是否是偶數? "+result);System.out.println("main...end...");}/*定義一個方法,該方法接收一個int參數,方法內部判斷是否是偶數三要素:1.方法名稱: isOu2.參數列表: int num3.返回值類型: boolean*/public static boolean isOu(int num) {if (num % 2 == 0) {return true;} else {return false;}} }?八、方法重載
方法重載:指在同一個類中,允許存在一個以上的同名方法,只要它們的參數不相同,類型不同或者數量不同即可,與修飾符和返回值類型無關。
public class Demo01MethodProblem {public static void main(String[] args) {//打印/輸出調用方法: 傳遞常量System.out.println(getTwoIntNumSum(10,20));System.out.println(getThreeIntNumSum(10,20,30));System.out.println(getTwoDoubleNumSum(10.0,20.0));System.out.println(getThreeDoubleNumSum(10.0,20.0,30.0));}//1.定義一個獲取兩個int數字之和的方法public static int getTwoIntNumSum(int a, int b) {return a + b;}//2.定義一個獲取三個int數字之和的方法public static int getThreeIntNumSum(int a, int b,int c) {return a + b + c;}//3.定義一個獲取兩個double數字之和的方法public static double getTwoDoubleNumSum(double a, double b) {return a + b;}//4.定義一個獲取三個double數字之和的方法public static double getThreeDoubleNumSum(double a, double b,double c) {return a + b + c;} }九、方法的參數傳遞
9.1 方法參數傳遞
public class Demo01Var {public static void main(String[] args) {//定義int變量a,并初始化int a = 20;//定義int變量b,未初始化int b;b = a;//把變量a中的值賦值給變量bSystem.out.println("a="+a);//20System.out.println("b="+b);//20b = b*10;System.out.println("a="+a);//20System.out.println("b="+b);//200method();//System.out.println(num);//錯誤: num是在method方法內部定義,只在method方法內部有效}public static void method(/*int m*/) {int num = 100;System.out.println(num);//System.out.println(a);//錯誤: a是在main方法內部定義,只在main方法內部有效} }?9.2 基本類型作為方法參數傳遞
/*基本數據類型作為方法參數注意:1.基本類型變量: 保存的是具體的數據值2.基本類型變量作為形式參數,形式參數的改變,不會影響實際參數基本類型變量作為形式參數:定義方法時,()中定義的參數屬于基本類型不會影響實際參數: 調用方法時,()中給出的參數*/ public class Demo02BaseVar {public static void main(String[] args) {int a = 10;int b = 20;System.out.println("ms...a="+a);//10System.out.println("ms...b="+b);//20//調用方法change( a , b );System.out.println("me...a="+a);//10System.out.println("me...b="+b);//20}public static void change(int a, int b) {System.out.println("cs...a="+a);//10System.out.println("cs...b="+b);//20a = a*10;b = b*10;System.out.println("ce...a="+a);//100System.out.println("ce...b="+b);//200} }?
? 9.3?引用類型作為方法參數傳遞
/*引用數據類型作為方法參數注意:1.引用類型變量: 保存的是對象在堆內存空間的地址值,進行參數傳遞的時候,傳遞的也是地址值2.引用類型變量作為形式參數,通過形式參數找到對應的堆內存空間,修改堆內存空間的內容之后,通過實際參數看到的一定是修改后的堆內存空間的內容引用類型作為形式參數,形式參數的改變,會影響實際參數數組:1.數組也是一種引用類型: 數組名稱保存的也是數組在堆內存空間的地址值2.數組作為方法參數或者返回值: 傳遞的都是數組在堆內存空間的地址值*/ public class Demo03RefVar {public static void main(String[] args) {int[] arr = { 10 , 20 };//System.out.println(arr);//數組名稱: 保存數組在內存中的地址值[I@1540e19dSystem.out.println("ms...arr[0]="+arr[0]);//10System.out.println("ms...arr[1]="+arr[1]);//20//調用方法change( arr );System.out.println("me...arr[0]="+arr[0]);//100System.out.println("me...arr[1]="+arr[1]);//200}public static void change(int[] arr ) {System.out.println("cs...arr[0]="+arr[0]);//10System.out.println("cs...arr[1]="+arr[1]);//20arr[0] = arr[0]*10;arr[1] = arr[1]*10;System.out.println("ce...arr[0]="+arr[0]);//100System.out.println("ce...arr[1]="+arr[1]);//200} }總結
以上是生活随笔為你收集整理的Java_基础阶段笔记总结汇总的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Pytorch神经网络理论篇】 22
- 下一篇: java美元兑换,(Java实现) 美元