大腦植入物可幫助完全“封閉患者”實現交流溝通
進位制
1.二進位制0 b
2.十進位制
3.八進位制0
4.十六進位制0 x 0~9 A~F F=15
浮點數拓展
float 有限 離散 舍入誤差 大約 接近但不等於
結論:最好完全避免使用浮點數進行比較
銀行業務使用b i g d e decimal
字元拓展
System.out.println(c1)
System.out.printlin((int)c1)//強制換行
總結:所有字元的本質還是數字
//編碼 Unicode 2位元組 65536 Excel 2的16方 =65536
// U 0000 U F F FF
char c3 ='\u0061';
System.out.println(c3);//a(輸出為字母a)
//轉義字元
// \t (製表符)
// \t(換行)
System.out.println("Hello\tWorld");// 輸出為Hello World
Syesem.out.println("Hello\nWorld");//輸出為 Hello
World
// 物件 從記憶體分析
// 布林值拓展
boolean flag =true;
if (flag=true){} //新手
if (flag){} //老手
// less is more 程式碼要精簡易讀
型別轉換
低----------------高
byte,short,char,int,long,float,double(小數的優先順序大於整數)
//強制轉換(型別)變數名 高-低
//自動轉換 低-高
int i =128;
byte b=(byte)i;輸出結果分別為128 -128 原因:記憶體溢位
注意點
1.不能對布林值進行轉換
2.不能把物件型別轉換為不相干的型別
3.把大容量轉換到低容量使,強制轉換
4.轉換的時候可能存在記憶體溢位或者精度問題
//操作比較大的數的時候,注意溢位問題
//J D K 7新特性,數字之間可以用下劃線分割
int money =10_0000_0000;
int years =20;
int total =money*years;//-1474836480,計算的時候溢位了
long total2=money*years;//預設是nt,轉換之前就已經存在問題了
long total2=money*((long)years);//先把一個數轉換為long
變數
1.變數是什麼:可以變化的量 x=1,2
-
Java是一種強型別語言,每個變數都必須宣告其型別。
-
Java變數是程式中最基本的儲存單元,其要素包括變數名,變數型別和作用域
注意
1.每個變數必須有一個型別
2.變數名合法
3.每行結束以分號結尾
變數作用域
類變數 static
例項變數:從屬於物件,如果不自行初始化,這個型別的預設值 0 0.0
布林值:預設是false
除了基本型別,其餘的預設值都是null
區域性變數:必須宣告和初始化 只在{}內有效
變數的命名規範
1.所有變數,方法,類名:見名知意
2.類成員變數:首字母小寫和駝峰原則: month Salary 除了第一個單詞以外,後面的單詞首字母大寫
3.區域性變數:同上
4.常量:大寫字母和下劃線:MAX_VALUE
5.類名:首字母大寫和駝峰原則:Man,Good Man
6.方法名:首字母小寫和駝峰原則:run(),run Run()
常量
初始化後不能再改變值,不會變動的值
static final double pi =3.14;//static final都是修飾符
運算子
算數運算子:+,-,*,/,%(取餘運算=模運算),++,--
賦值運算子:=
關係運算符:>,<,>=,<=,== (等於),!=(不等於)
邏輯運算子:&&(與),||(或),!(非)
位運算子:&,|,^,~,<<,>>,>>>(瞭解)
條件運算子:?,:
擴充套件賦值運算子:+=,-=,*=,/=
//++(自增) a++與++a的區別 ++在前就是先自增再賦值,在後相反
--(自減) 這兩個叫做一元運算子
冪運算:
double pow =Math.pow(2,3)// 輸出為2*2*2