程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java編程那些事兒18——變量和常量

Java編程那些事兒18——變量和常量

編輯:關於JAVA

3.6 變量和常量

在程序中存在大量的數據來代表程序的狀態,其中有些數據在程序的運行過程中值會發生改變,有些數據在程序運行過程中值不能發生改變,這些數據在程序中分別被叫做變量和常量。

在實際的程序中,可以根據數據在程序運行中是否發生改變,來選擇應該是使用變量代表還是常量代表。

3.6.1 變量

變量代表程序的狀態。程序通過改變變量的值來改變整個程序的狀態,或者說得更大一些,也就是實現程序的功能邏輯。

為了方便的引用變量的值,在程序中需要為變量設定一個名稱,這就是變量名。例如在2D游戲程序中,需要代表人物的位置,則需要2個變量,一個是x坐標,一個是y坐標,在程序運行過程中,這兩個變量的值會發生改變。

由於Java語言是一種強類型的語言,所以變量在使用以前必須首先聲明,在程序中聲明變量的語法格式如下:

數據類型 變量名稱;

例如:int x;

在該語法格式中,數據類型可以是Java語言中任意的類型,包括前面介紹到的基本數據類型以及後續將要介紹的復合數據類型。變量名稱是該變量的標識符,需要符合標識符的命名規則,在實際使用中,該名稱一般和變量的用途對應,這樣便於程序的閱讀。數據類型和變量名稱之間使用空格進行間隔,空格的個數不限,但是至少需要1個。語句使用“;”作為結束。

也可以在聲明變量的同時,設定該變量的值,語法格式如下:

數據類型 變量名稱 = 值;

例如:int x = 10;

在該語法格式中,前面的語法和上面介紹的內容一致,後續的“=”代表賦值,其中的“值”代表具體的數據。在該語法格式中,要求值的類型需要和聲明變量的數據類型一致。

也可以一次聲明多個相同類型的變量,語法格式如下:

數據類型 變量名稱1,變量名稱2,…變量名稱n;

例如:int x,y,z;

在該語法格式中,變量名之間使用“,”分隔,這裡的變量名稱可以有任意多個。

也可以在聲明多個變量時對變量進行賦值,語法格式如下:

數據類型 變量名稱1=值1,變量名稱2=值2,…變量名稱n=值n;

例如:int x = 10,y=20,z=40;

也可以在聲明變量時,有選擇的進行賦值,例如:int x,y=10,z;

以上語法格式中,如果同時聲明多個變量,則要求這些變量的類型必須相同,如果聲明的變量類型不同,則只需要分開聲明即可,例如:

int n = 3;
boolean b = true;
char c;

在程序中,變量的值代表程序的狀態,在程序中可以通過變量名稱來引用變量中存儲的值,也可以為變量重新賦值。例如:

int n = 5;
n = 10;

在實際開發過程中,需要聲明什麼類型的變量,需要聲明多少個變量,需要為變量賦什麼數值,都根據程序邏輯決定,這裡列舉的只是表達的格式而已。

3.6.2 常量

常量代表程序運行過程中不能改變的值。

常量在程序運行過程中主要有2個作用:

l代表常數,便於程序的修改

l增強程序的可讀性

常量的語法格式和變量類型,只需要在變量的語法格式前面添加關鍵字final即可。在Java編碼規范中,要求常量名必須大寫。

則常量的語法格式如下:

final 數據類型 常量名稱 = 值;

final 數據類型常量名稱1 = 值1, 常量名稱2 = 值2,……常量名稱n = 值n;

例如:

final double PI = 3.14;
final char MALE=’M’,FEMALE=’F’;

在Java語法中,常量也可以首先聲明,然後再進行賦值,但是只能賦值一次,示例代碼如下:

final int UP;
UP = 1;

常量的兩種用途對應的示例代碼分別如下:

l代表常數

final double PI = 3.14;
int r =5;
double l = 2 * PI * r;
double s = PI * r * r;

在該示例代碼中,常量PI代表數學上的∏值,也就是圓周率,這個是數學上的常數,後續的變量r代表半徑,l代表圓的周長,s代表圓的面積。

則如果需要增加程序計算時的精度,則只需要修改PI的值3.14為3.1415926,重新編譯程序,則後續的數值自動發生改變,這樣使代碼容易修改,便於維護。

l增強程序的可讀性

int direction;
final int UP = 1;
final int DOWN = 2;
final int LEFT = 3;
final int RIGHT = 4;

在該示例代碼中,變量direction代表方向的值,後續的四個常量UP、DOWN、LEFT和RIGHT分辨代表上下左右,其數值分別是1、2、3和4,這樣在程序閱讀時,可以提高程序的可讀性。

3.6.3 語句塊

在程序中,使用一對大括號{}包含的內容叫做語句塊,語句塊之間可以互相嵌套,嵌套的層次沒有限制,例如:

{
 int a;
}
語句塊的嵌套:
{
 int b;
 {
  char c;
 }
}

以上代碼只是演示語法,沒有什麼邏輯意義。在後續的語法介紹中,還會有語句塊的概念,就不再重復介紹了。

3.6.4 變量的作用范圍

每個變量都有特定的作用范圍,也叫做有效范圍或作用域,只能在該范圍內使用該變量,否則將提示語法錯誤。通常情況下,在一個作用范圍內部,不能聲明名稱相同的變量。

變量的作用范圍指從變量聲明的位置開始,一直到變量聲明所在的語句塊結束的大括號為止。例如以下代碼:

{
 {
  int a = 10;
  a = 2;
 }
 char c;
}

在該代碼中,變量a的作用范圍即從第三行到第五行,變量c的作用范圍即從第六行到第七行。

3.6.5 常量的作用范圍

常量的作用范圍和變量的作用范圍規則完全一致。

3.6.6 總結

對於變量和常量的內容就介紹這麼,下面是一個完整的代碼,可以在JDK或Eclipse中進行編譯和運行。代碼文件名為VariableAndConst.java,示例代碼如下:

public class VariableAndConst{
 public static void main(String[] args){
  int n = 0;
  char c = ‘A’;
  System.out.println(n);
  n = 10;
  System.out.println(n);
  System.out.println(c);
 }
}

說明:在該代碼中,System.out.println的功能是輸出變量中存儲的值。

文章來源:http://blog.csdn.net/Mailbomb/archive/2008/05/07/2407996.aspx

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved