淺談 KM 演算法
1.1註釋
//單行註釋
/*多行註釋 */ /**文件註釋 */
註釋:解釋說明的文字
作用:對程式解釋說明 便於後期維護
多行與文件的區別: 1:文件註釋內容能夠被保留在api文件(說明手冊)中但是多行與單行不能 2:如果在idea。。等編輯工具中,在方法上新增文件註釋會自帶宣告說明,而多行註釋沒有。
注意: 恰當為止添加註釋 註釋內容不會被編譯
public class Class002_Note{ //類體/*開始*/
//主方法程式入口
public static void main(String[] args){
System.out.println();
}
}
1.2變數
變數 定義一個變數。其值子執行時期間可以發生改變 在記憶體中開闢一塊空間,用來存放指定型別的資料,記憶體空間為變數
相當於造盒子: 盒子:變數 盒子的名字:變數名 盒子中的資料:變數值
作用:變數就是用來儲存資料
關注的點: 資料型別:常用的資料型別:int整數 double小數 String字串 boolean布林 char字元 變數名字:識別符號 變數的值 作用域:有效的,能夠使用的作用範圍{} 從變數的宣告開始,到包裹我的,離我最近的}結束
語法: 宣告變數的同時賦值 資料型別 變數名 = 變數值; 先宣告 資料型別 變數名; 後賦值 變數名=變數值;
同時宣告多個變數同時\賦值,同時宣告並且賦值 多個變數
注意:=是一個自右向左運算的符號 變數只能儲存單個數據
變數分類: 區域性變數:方法中定義的變數|語句塊中定義的變數不存在的預設值,使用前必須已經宣告並且已經賦值 成員變數:定義在類中方法外的 變數稱為成員變數只宣告不賦值存在的預設值。
public class Class004{
//成員變數
int i;
//主方法程式入口,從上到下依次執行
public static void main(String [] args){
//SyStem.out.println(name);
//儲存學生年齡18
int age=18;
System.out.println(age);
//宣告一個變數,儲存學生姓名
String name;
//System.out.println(name);
name="張三";
System.out.println(name);
//同時宣告多個變數
int x,y,z;
x=y=z = 10;
System.out.println(x);
System.out.println(y);
System.out.println(z);
double a=1.1,b=2.2;
System.out.println(a);
System.out.println(b);
}
public static void test(){
System.out.println(name);
}
}
1.3常量
常量: 在程式執行期間其職不能發生改變的量
分類: 字面值常量 整數常量:100 0 -1 小數常量:1.1 -2.5 字元常量:' ' ' 1 ' ' a ' 布林常量:true false 字串常量:" " "123" " 你好" 空常量:null 自定義常量:被final修飾的變數為常量
public class Class005_Constant{
//主方法程式入口,從上到下依次執行
public static void main(String[] args){
//把=右邊的字面值常量18賦值給了=左邊的int型別的變數age
int age = 18;
System.out.println(AGE);
age = 19;
System.out.println(AGE);
final double PI = 3.1415926;
}
}
1.4資料型別
資料型別: 基本資料型別:四類八種 整型:byte 位元組型 [-128,127] short 短整型 [-32768,32767] int 整型 [+-21億] long 長整型 [灰常大] 注意:JAVA中整數字面常量值預設是int型別,表示long型別資料,需要在資料的後面,新增L或者l
浮點型: float 單精度 表示小數點後六位 double 雙精度 表示小數點後十五位左右(常用) 字元型: char 字元型表現方式: ' '包裹一個字元有且僅有一個字元 ' 1 ' ' a ' 0~65535之間的整數表示一個字元 unicode字元型——>ASCII字符集
字元型參與運算,會先轉化為十進位制的整數再運算 布林型: boolean true false 在進行邏輯運算的時候會大量的使用到boolean
public class Class006_DataType{
//主方法程式入口,從上到下依次執行
public static void main(String[] args){
//byte
byte b1 = 1;
System.out.println(b1);
//short
short s1 = 25000;
System.out.println(s1);
//int
int i1 = 300000;
System.out.println(i1);
//long
long l1 = 10000000111L;
System.out.println(l1);
//double
double d1 = 1.23;
System.out.println(d1);
float f1 = 1.2f;
System.out.println(f1);
}
}
public class Class007_DataType{
//主方法程式入口,從上到下依次執行
public static void main(String[] args){
char ch = 'a'+1;
char ch2 = 97;
System.out.println(ch);
System.out.println(ch2);
System.out.println(ch+1);
boolean True = false;
boolean flag = True;
System.out.println(flag);
}
}
1.5資料型別表現形式
整型: 進位制:滿幾進一 二進位制:由0,1組成 由0B|b開頭表示二進位制 八進位制:由0~7組成 有0開頭表示八進位制 十進位制:預設 十六進位制:由0~9,a~f組合而成,不區分大小寫 其他進位制轉為10進位制:從最後一位開始,數值進位制數從0開始,每次+1,最後的和就為十進位制的結果 十進位制轉為其他進位制 : 對十進位制的數值除以要轉為的進位制數,得到餘數,從下往上 浮點型: 1.小數點前面為0,0可以省略 2.科學記數法 e->10 3.14e2==>3.1410^2 3.14e-2==>3.14/10^2
public class Class008_Scale{
//主方法程式入口,從上到下依次執行
public static void main(String[] args){
System.out.println(0.5);
System.out.println(.5);
System.out.println(3.14e2);
System.out.println(3.14e-2);
System.out.println(10);
System.out.println(0b10);
System.out.println(012); //2*8^0 + 1*8^1 = 2+8 = 10
System.out.println(0x15); //5*16^0 + 1*16^1 = 21
System.out.println(0b1100); //0*2^0 + 0*2^1 + 1*2^2 + 1*2^3 = 0 + 0 + 4 + 8 = 12
//521 轉為二進位制,八進位制,十六進位制
}
}
1.6轉義字元
轉義字元 在java中有些字元具有特殊含義(",'),如果不想表示特殊含義,只想表示字元本身,可以使用轉義字元進行轉義轉義字元從\開始 \ " \ ' \ \ \t 製表符 1個製表符佔8個空格 \n 換行 游標從當前位置到下一行的行首
\b 退格,回刪一格 游標後退一格
blic class Class009_Escape{
//程式的入口
public static void main(String[] args){
//ln 輸出當前()中內容完畢之後游標換到下一行行首
System.out.println("\"");
System.out.println("'");
System.out.println('\'');
System.out.println('\\');
System.out.println("abc");
System.out.println("\tabc");
System.out.println("yjt\tabc");
System.out.println("你好\tabc");
System.out.println("你好\nabc");
System.out.println("你好\nabc");
System.out.println("你好abc");
System.out.println("你好abc\b ");
}