Java:Java快速入門
你好,世界。
原始碼組織方式
Java程式由package+class組成,package對應目錄的相對路徑,class對應檔案,如
E:\Workspaces\MyEclipse 10\JavaStudy\src\com\happyframework\javastudy\hello\Hello.java
1 package com.happyframework.javastudy.hello;2 3 public final class Hello {4 public static void hello(){5 System.out.println("hello!");6 }7 }
關於class有如下幾點規則: 檔案的名字必須和class的名字一致(public層級的class名字)。 檔案必須只包含一個public訪問基本的class(可以包含多個非public層級的class)。 package名字必須和目錄一致。 入口方法
App.java
1 public class App {2 public static void main(String[] args) {3 com.happyframework.javastudy.hello.Hello.hello();4 }5 }
最終的項目結構
資料類型
8種原子類型 整數類型:byte、short、int和long。 小數類型:float和double。 字元類型:char。 布爾類型:bool。
除此之外的是interface、class和array。
小數類型的常量預設是double類型,聲明float類型的常量需要使用F作為尾碼。
1 public class Program { 2 3 /** 4 * @param args 5 */ 6 public static void main(String[] args) { 7 float age = 28.0F; 8 System.out.println(age); 9 }10 11 }
運算子 算術運算子:+、-、*、/ 和 %,兩個整數相除,結果還是整數。 賦值運算子:=、+=、-=、*=、/=、%=、&=、|=、~=、^=、<<=、>>= 、 >>>=、++ 和 --。 比較子:==、!=、<、<=、> 和 >=。 邏輯運算子:&&、|| 和 !。 位元運算符:&、|、~、^、<<、>> 和 >>>。
字串返回目錄
String是擁有“值語義”的參考型別,字串常量實現了“享元模式”,equals會按照內容進行比較,==按照地址比較。
1 public class Program { 2 3 /** 4 * @param args 5 */ 6 public static void main(String[] args) { 7 String x = "段光偉"; 8 String y = new String("段光偉"); 9 10 System.out.println(x.equals(y)); // true11 System.out.println(x == y); // false12 }13 14 }
為了高效的修改字串Java引入了StringBuffer。
1 {2 StringBuffer sb = 3 new StringBuffer()4 .append("段")5 .append("光")6 .append("偉");7 8 System.out.println(sb.toString());9 }
數組
聲明文法
DataType[] name 或 DataType name[]。
初始化文法
DataType[] name = new DataType[length]。
DataType[] name = new DataType[] { element1, element2, ...elementn }。
DataType[] name = { element1, element2, ...elementn }。
1 public class Program { 2 3 /** 4 * @param args 5 */ 6 public static void main(String[] args) { 7 { 8 String[] strs = { "段", "光", "偉" }; 9 10 for (String item : strs) {11 System.out.print(item);12 }13 }14 }15 16 }
多維陣列
只有不等長多維陣列DataType[][],沒有DataType[xxx, xxx]。 控制結構 條件:if-else if-else、switch-case-default和三元運算子(?:)。 迴圈:while、do-while、for和foreach。 Labeled block。
1 public class Program { 2 3 /** 4 * @param args 5 */ 6 public static void main(String[] args) { 7 task: { 8 int age = 25; 9 10 System.out.println("start");11 12 if (age < 30) {13 break task;14 }15 16 System.out.println("end");17 }18 }19 }
最近覺得label是個不錯的東西,最起碼多了一種選擇。 方法
Java中所有的賦值和方法調用都是“按值“處理的,參考型別的值是對象的地址,原始類型的值是其自身。
Java支援變長方法參數。