目錄
Java 入口方法
獲取用戶鍵盤輸入
系統(tǒng)相關(guān)的兩個類:System? Runtime
處理日期的類:Date 和 Calendar
正則表達式
Java專門提供了兩個工具類:Pattern鲁豪、Matcher
Java 程序國際化
數(shù)值格式化yu日期格式化
Java入口方法
??? public? —? 系統(tǒng)來調(diào)用該方法時汹忠,不可能在同一個包中,也不會是它的子類。
?????????????? —? 為了保證調(diào)用該方法缕陕,只能用 public
??? static? —? 無需創(chuàng)建實例瀑梗,直接用類名調(diào)用入口方法枢冤。
??? String[ ]? —? 默認是長度為 0 的數(shù)組征冷。
? ? ? ? ? ? ? ? ? ? ? ? java 主類類名? 第1個數(shù)組元素? 第2個數(shù)組元素? 第3個數(shù)組元素…
誰調(diào)用方法,誰負責(zé)為形參賦值坯屿。
獲取用戶鍵盤輸入:
????? 系統(tǒng)里油湖,System.in 代表鍵盤? —? 如果直接用很麻煩,通常都會進行包裝
????? A领跛。傳統(tǒng)會包裝成 BufferedReader? ——? 這個更安全乏德,且有完善的異常機制
????? B。JDK 1.5 增加了一個 Scanner??? ——? 更簡單吠昭,但是沒有錯誤提示
ScannerTest? 程序 及 運行結(jié)果:
import java.util.*;
public class ScannerTest
{
??? public static void main(String[] args)
??? {
? ?? ?? Scanner sc = new Scanner(System.in);
? ?? ?? // 判斷是否還有下一行
? ? ? ? /* while(sc.hasNextLine())
? ?? ?? {
? ? ? ? ?? // 輸出 下一行
? ?? ? ?? System.out.println("~~" + sc.nextLine());
? ?? ?? }*/
??? // 判斷是否還有下一 int整數(shù)
? ?? ?? while(sc.hasNextInt())
? ? ? ? {
? ? ? ?? ?? // 輸出 下一行
? ? ? ? ? ? System.out.println("~~" + sc.nextInt());
? ? ? ? }
??? }
}
Scanner? 的缺點:沒有完善的異常機制喊括。比如上面的?? 當(dāng)設(shè)置為輸出整數(shù)時,輸入非整數(shù)不會報錯矢棚,直接就跳出程序了瘾晃。
系統(tǒng)相關(guān)的兩個類:
??? System? —? 代表 JVM 所在的操作平臺
? ? ? ? ?? ? ? ? ? ??? 通俗說,如果你要獲取操作平臺相關(guān)的特性幻妓,用 System
???????????? in - 標準輸入。通常標準輸入就是鍵盤
????? ? ? ?? out - 標準輸出劫拢。通常就是屏幕 ????
???????????? exit ( int status ) : 退出虛擬機
???????????????????????????????????????? 無論方法肉津、線程,都會結(jié)束
???????????? - getenv()? —? 獲取所有環(huán)境變量
? ? ? ? ? ?? - getenv( String name )? —? 獲取指定環(huán)境變量的值
???????????? - static Properties getProperties()? —? 獲取所有系統(tǒng)屬性
? ? ? ?? ? ? - static String getProperty(Stringkey)? —? 獲取指定系統(tǒng)屬性
??? Runtime? —? 代表虛擬機所在的 JRE (Java Runtime Environment)
???????????????????? JRE = JVM + 核心類庫
???????????????????? 通俗說舱沧,如果你要獲取 JVM 相關(guān)的特性妹沙,用 Runtime。
??????????????? 典型的 ”單例“ 類熟吏,它的構(gòu)造器被隱藏了
??????????????? 因此只能通過 getRuntime() 方法來獲取實例
???????????????? rt.maxMemory ()
???????????????? rt.totalMemory ()
???????????????? rt.freeMemory ()
???????????????? 還可以運行操作系統(tǒng)已經(jīng)的程序:? exec?
處理日期的類:Date 和 Calendar
正則表達式
Java專門提供了兩個工具類:Pattern距糖、Matcher
Java 程序國際化
??????? 希望一個程序,可以 “自適應(yīng)” 所有用戶環(huán)境牵寺。
? ? ??? Internationalization??? 20 個字母? —? 簡稱? I18N
??????? 十分簡單? ——? 本質(zhì)就是 “查找悍引、替換”
??????? 資源文件? —? 負責(zé)為程序 提供 國際化消息
???????????????? 資源文件的文件名必須滿足?? <baseName>_語言代碼_國家代碼.properties
???????????????? 如果資源文件中包含非西歐字符,需要使用 native2ascii 工具類處理這個文件帽氓。
? ? ? ? ? ? ? ? native2ascii? 要處理的文件? 生成的新文件名??????? (語法格式)
Locale? ——? 代表語言趣斤,國家環(huán)境?
??????? —? static Locale[] getAvailableLocales()?? -? 獲取Java支持所有語言、國家黎休。
ResourceBundle? —? 負責(zé)加載指定資源文件浓领,而且?guī)臀覀冞M行查找玉凯、替換
MessageFormat? —? 負責(zé)為消息中的占位符填充參數(shù)值。
??????????????????????? format(String pattern联贩,Object...arguments)
? ? ? ? ? ? ? ? ? ? ?? 該方法中arguments參數(shù)就負責(zé)依次替換每個占位符漫仆。
? 國際化的步驟:
????????? 本質(zhì)就是:讓 ResourceBundle 幫我們進行查找、替換泪幌。
數(shù)值格式化yu日期格式化
NumberFormat ?? DateFormat??? SimpleDateFormat
以上盲厌,未完
寫在最后:進度還是有些慢了