JAVA基礎篇

                               Java基礎學習

firstday

JDK(Java Development Kits)-- Java開發工具集
   JRE(Java RunTime Environment)Java運行時環境
設置環境變量:
1添加JAVA_HOME環境變量,指向JDK安裝目錄
2修改path:用於指定操作系統的可執行指令的路徑

1.Dos命令
cd /d 改變目錄;Ctrl+z撤銷;Ctrl+c複製Ctrl+v粘貼;Ctrl+a全選;Ctrl+s保存;
2.編譯java源代碼
  javac -d . java源文件名稱
3.運行.class文件(字節碼文件)
  java 包.class類名
單詞在java中的意思:String字符串   println(換行)
二 .數據類型

整數類型

佔用存儲空間

存儲範圍

byte

1字節 

-128 ~ 127 

short

2字節 

-215 ~ 215-1 

int 

4字節 

-231 ~ 231-1 

long

8字節 

-263 ~ 263-1 

浮點類型

佔用存儲空間

存儲範圍

float

4字節 

-3.403E38~3.403E38 

double

8字節 

-1.798E308~1.798E308 

Java語言的整型常量默認爲int。
要聲明long型可以加‘l’或‘ L’,如:long  l = 3L;
Java浮點型常量默認爲double型,如要聲明一個變量爲float型,則需在數字後面加f或F,如:
double  d = 3.14;
float  f = 3.14f;

轉義字符

名稱

描述

\n 

換行

將光標移到下一行的第一格。

\r 

回車

將光標移到當前行的第一格(歸位)

\t 

水平製表 

將光標移到下一個水平製表位置。

\'  

單引號

產生一個單引號。

\"  

雙引號

產生一個雙引號。

\\

斜槓

產生一個斜槓。


1.自動轉型:小範圍數據轉換成大範圍的數據
      大範圍數據類型  變量名=小範圍數據類型的值;
      eg:  long x=5;


2.強制轉型:大範圍數據類型轉換成小範圍數據類型
      小範圍數據類型  變量名=(小範圍數據類型)大範圍數據類型的值;
      eg:  int a=(int)5L;

三.運算符
算術運算符:+ 、 - 、 * 、 / 、 % 、 ++ 、 --
賦值運算符:= 、 += 、 -= 、 *= 、 /= 、 %=
關係運算符:> 、 < 、 >= 、 <= 、 == 、 !=
邏輯運算符:! 、 & 、 |  、 && 、 ||
位運算符:& 、 | 、 ^ 、 ~ 、 >> 、 << 、 >>>
字符串連接運算符:+
三目運算符 :?:
易混淆運算符:
    1. 自增運算符:++ 
        易混淆的點:a++ 先保存舊值,再自增,用舊值參加運算
                    ++a 直接自增,用自增後的值參加運算


    2. 短路與&& 如果前面的判斷結果爲false,則後面的判斷不再執行。
      非短路與&  每一個判斷邏輯都要執行


    3. 短路或|| 如果前面的判斷結果爲true,則後面的判斷不再執行。
      非短路或 |  每一個判斷邏輯都要執行


位運算符:
    在計算機中數字的運算都是按照“補碼”的形式運算的。
    正數的原碼、反碼、補碼是相同的;
    負數的反碼是其原碼的除了符號位以外的二進制位取反。
    負數的補碼是反碼加1。
    符號位是最左邊的那個二進制位,0代表正數,1代表負數。


    按位與:& 兩個二進制位都爲1,結果才爲1;其餘情況結果爲0;
    按位或:|  只要有一個二進制位爲1,結果就爲1;兩個二進制位都爲0,則結果爲0;
    按位異或:^  相同的兩個二進制位結果爲0,不同的二進制位結果爲1。
    按位取反:~ 0變1,1變0.
    右移: >> 右移後,左邊的二進制位用符號位來補,正數補0,負數補1
    左移: << 左移後,右邊的二進制位用0來補。
    無符號右移:>>> 右移後,左邊的二進制位用0來補。


三目運算符:
    結果返回boolean值的表達式?"結果爲true時內容":"結果爲false時內容"

secondday

1.if循環
if (條件表達式){
          
     }else if(條件表達式){
          
     }else if(條件表達式){
     }…
     else{
          // 以上表達式結果均爲false,執行此處,此分支可選
     }
     注意:這個結構中只執行第一次表達式結果爲true的那個分支,如果所有分支的表達式爲false,則執行最後面的else分支,else分支可選。
case:
package org.westos.ifdemo;


import java.util.Scanner;


public class MultiIf {
    public static void main(String[] args) {
Scanner scan=new Scanner(System.in);  // 用此“掃描器”接收鍵盤輸入
System.out.print("請輸入考試成績:");
        int score=scan.nextInt();   // 接收鍵盤輸入的整數類型,輸入完成之前一直阻塞
        if(score>=90){
        System.out.println("優秀!");
        }else if(score>=80){
        System.out.println("良好");
        }else if(score>=70){
        System.out.println("一般");
        }else if(score>=60){
        System.out.println("及格");
        }else{
        System.out.println("不及格,等着補考吧~~~");
        }
        scan.close();
        
}
}
2.switch結構
switch(表達式){
       case 常量1:
            代碼1;
            break;
        case  常量2:
             代碼2;
             break;
         …
         default:
              代碼..;
               break; 
  }
case:
import java.util.Scanner;
/*
 *  switch表達式的返回值必須是下述幾種類型之一:
byte, short,int, char,String,enum
 * */
public class SwitchDemo {


public static void main(String[] args) {
        Scanner scan=new Scanner(System.in);
        System.out.print("請輸入季節:");
        String season=scan.next();
        switch(season){
       case "春天":
        System.out.println("春暖花開");
        break;
       case "夏天":
        System.out.println("夏日炎炎");
        break;
       case "秋天":
        System.out.println("秋風瑟瑟");
        break;
       case "冬天":
        System.out.println("白雪皚皚");
        break;
        default:
        System.out.println("您輸入的季節有誤!");
        }
        scan.close();   // 關閉
}


}

注:switch語句規則:表達式的返回值必須是下述幾種類型之一:
int, byte, char, short,String,enum;
case子句中的取值必須是常量,且所有case子句中的取值應是不同的;
default子句是可選的;
break語句用來在執行完一個case分支後使程序跳出switch語句塊;

3.for循環
for{
int i=0(初始表達式)
i<100;(判斷表達式)
i++;(每次循環)
(循環體)System.out.println("好好學習");}
注:break:跳出整個循環;continue:跳出當前循環;
case:forbreak;
package org.forloop;


public class ForBreak {


public static void main(String[] args) {
for (int i = 0;i<10; i++) {
if(i==5){
break;  // 跳出for循環
}
System.out.println("好好學習"+i);
}
}


}
case:forcontinue;
package org.forloop;


public class ForContinue {


public static void main(String[] args) {
for (int i = 0;i<10; i++) {
if(i==5){
continue;  // 跳出當前循環,繼續下一次循環
}
System.out.println("好好學習"+i);
}
}


}
4.while循環
while( 條件表達式語句){
    循環體語句;
}
注意:先判斷條件,再決定是否循環

case:
package org.whiledemo;


public class WhileDemo {


public static void main(String[] args) {
int sum=0;
int i=100;
while(i>=1){
sum+=i;
i--;
}
System.out.println(sum);


}


}
5.do while循環
do{
    循環體語句;
}while(條件表達式); 


注意:至少執行一次循環體,再判斷條件,如果條件判斷的結果爲true,則再次循環,否則,停止循環。

case:
package org.whiledemo;


import java.util.Scanner;


public class DoWhile {


public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int score=0;
do {
System.out.print("請輸入考試成績:");
score=scan.nextInt();
} while (score<60);
System.out.println("恭喜,考試通過!");
scan.close();


}


}
6.Random循環
Random r=new Random();//生成一個隨機種子對象
case:
package org.whiledemo;


import java.util.Random;


public class RandomDemo {


public static void main(String[] args) {
Random r=new Random();    // 生成一個“隨機種子”對象
int num=r.nextInt(16)+3;   // 模擬扔3個骰子
        System.out.println("生成的隨機骰子數是:"+num);
}


}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章