Notes:
常見的錯誤訊息
- Net Beans 程式會將 class 的程式放在 專案名稱/src 資料夾底下
- 除了 java.lan 以外的套件都要 import
- Java 程式起點 ( Entry point ) 是從main 方法( Method ) 開始
- 類別裡面有方法, 方法的裡面有程式.
- System.out.println("Hello! World!")
- 使用System 類別的out 成員( Member ), 要求使用out上的 println()方法,在螢幕顯示 Hello! World!
- 建議一個檔案放一個類別.(比較不會混亂)
- 使用 javac -verbose 顯示詳細資訊
- javac -encoding utf8 ( java 預設使用 ANSI編碼, 如果是使用 unicode編碼 要指定 -encoding)
- /** 為文件註解 ( 可以使用 javadoc *.java 產生 java 文件)
常見的錯誤訊息
- cannot find symbol ( 找不到這個類別, 一般來說是沒有 import )
- package system does not exit ( package 資料夾不存在 )
- HelloWorld.java:4:';' expected ( 程式第 4列 忘記加 ; )
- illegal character: \12288 ( 可能是編碼問題, 例如使用 unicode 編碼)
資料型態
整數: byte short int long
1byte 2byte 4byte 8byte
小數: float double
4 8
字元: char
真假值: boolean
每一個資料型態對應到一個類別, 可以使用MAX_VALUE 以及 MIN_VALUE來查看大小值
例如:
程式內容如下 int x=Integer.MAX_VALUE;
System.out.println("Integer Max = "+x);
int y=Integer.MIN_VALUE;
System.out.println("Integer Min = "+y);
Lab: 運算練習
在NetBeans 內新增一個 Main Class 取名為 Airth1/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author max
*/
public class Arith1 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
int a,b,c;
a = 1;
b = 3;
c = a+b;
System.out.println("c = "+c);
c = a-b;
System.out.println("c = "+c);
c = a*b;
System.out.println("c = "+c);
c = a/b;
System.out.println("c = "+c);//預設為整數,所以會顯示為0 (結果為0.333-)
// TODO code application logic here
}
}
Lab: a++ and ++a
輸出結果如下
自己整理一下, 程式碼如下
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author max
*/
public class Arith1 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
int a,b,c;
a = 1;
System.out.println("a ="+a);
b = 2;
a++;
System.out.println("a = "+a);
System.out.println("---------First Lab-----------------------------");
System.out.println("a = "+a);
c=a++;//會先執行 c=a; 然後才是a=a+1;
System.out.println("Run c=a++; 會先執行 c=a; 然後才是a=a+1");
System.out.println("a = "+a);
System.out.println("c = "+c);
System.out.println("---------Second Lab----------------------------");
System.out.println("a = "+a);
System.out.println("c = "+c);
c=++a;//會執行 a=a+1; 然後才是c=a;
System.out.println("Run c=++a; 會執行 a=a+1; 然後才是c=a");
System.out.println("a = "+a);
System.out.println("c = "+c);
// TODO code application logic here
}
}
輸出結果如下
a =1
a = 2
---------First Lab-----------------------------
a = 2
Run c=a++; 會先執行 c=a; 然後才是a=a+1
a = 3
c = 2
---------Second Lab----------------------------
a = 3
c = 2
Run c=++a; 會執行 a=a+1; 然後才是c=a
a = 4
c = 4
Lab: 轉型
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author max
*/
public class Arith1 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
int x,y;
double z;
x=121;
y=7;
z=x/y;
System.out.println("還未轉型前 z 不能顯示小數, 因為 x, y 為整數");
System.out.println("z = "+z);
z=(double)x/y;
System.out.println("轉型後 z 可以顯示小數");
System.out.println("z = "+z);
// TODO code application logic here
}
}
輸出結果參考
還未轉型前 z 不能顯示小數, 因為 x, y 為整數
z = 17.0
轉型後 z 可以顯示小數
z = 17.285714285714285
沒有留言:
張貼留言