10 常用類
1 包裝類
作用:包裝類中封裝了該類型常用的屬性和方法,以方便操作。
java中有8中基本類型,對應有八種包裝類:
int--->Integer ,char---->Character ,其他六種則為首字母大寫,如: boolean---->Boolean
裝箱:將基本數據類型轉換成包裝類,經常通過構造方法完成。 Integer i = new Integer(123);
拆箱:將包裝類轉換為基本數據類型。 xxxValue() ,int i2 = i.intValue();
從JDK1.5之後支持自動裝箱和拆箱: Integer i=123;//裝箱
eg: Integer i5 = Integer.valueOf("1234");//將一個字符串轉換成Integer
對應的二進制為: Integer.toBinaryString(123)
對應的八進制為: Integer.toOctalString(123)
對應的十六進制為: Integer.toHexString(123)
2 字符串(String)
java.lang.String是不可變的字符序列,本質上是通過字符數組實現的,所以下標從0開始。
1)常用的構造方法
String() 初始化一個新創建的 String
String(String original) 初始化一個新創建的 String 對象,使其表示一個與參數相同的字符序列。
String(char[] value) 分配一個新的 String,使其表示字符數組參數中當前包含的字符序列。
2)常用方法
length():獲取字符串的長度
charAt(int index): 查看指定下標的字符,字符串的下標從零開始
toUpperCase(): 全部轉為大寫
toLowerCase(): 全部轉為小寫
equals(String s): 比較字符串的內容是否相等
equalsIgnoreCase(String s): 忽略大小寫比較內容是否相等
indexOf(String s): 索引指定字符串s在當前字符串的出現的下標位置,如果查找不到返回-1,如果存在多個將返回第一個字符串的下標位置
lastIndexOf(String s): 索引指定字符串s在當前字符串的最後出現的下標位置
substring(int begin): 字符串截取從begin開始截取到最後。
substring(int begin,end): 字符截取從begin開始,到end-1結束。不包含end位置
trim(): 去掉前後空格,中間空格無法去除。
startsWith(String s): 測試此字符串是否以指定的前綴開始
endsWith(String s): 測試此字符串是否以指定的後綴結束
replace(char oldChar, char newChar) 返回一個新的字符串,它是通過用 newChar 替換此字符串中出現的所有 oldChar 得到的。
replace(CharSequence target, CharSequence replacement) 使用指定的字面值替換序列替換此字符串所有匹配字面值目標序列的子字符串。
String[] split(String regex): 根據給定正則表達式的匹配拆分此字符串。
String concat(String str): 將指定字符串連接到此字符串的結尾
示例1: 輸入一個字符串,輸入一個字符,判斷該字符在該字符串中出現的次數
public static void main(String[] args) {
int count=0;
Scanner input = new Scanner(System.in);
System.out.println("請輸入字符串:");
String str = input.next();
System.out.println("請輸入你要查找字符:");
String search = input.next();
int len = str.length();
for(int i=0;i<len;i++){
String s = str.charAt(i)+"";
if(s.equals(search)){
count++;
}
}
System.out.println(str+"中包含了"+count+"個"+search);
}
3 StringBuffer/StringBuilder
java.lang.StringBuffer:線程安全的可變字符序列,String增強版,自帶緩沖區
常用構造方法:
StringBuffer()
StringBuffer(CharSequence seq)
常用的方法:
append(String str):將字符串追加到StringBuffer後
insert(int offset,char c): 在定義位置插入字符
reverse():字符反轉
String/StringBuffer/StringBuilder的區別:
String:不可變的字符序列;
StringBuffer:可變的字符序列,基於線程安全的,效率較低;
StringBuilder:可變的字符序列,非線程安全的,效率較高。
System.currentTimeMillis();當前時間與協調世界時1970年 1月 1日午夜之間的時間差(以毫秒為單位測量)。
4 Java中的日期處理
1)java.util.Date
java.sql.Date是java.util.Date的子類,
常用的構造方法:
Date():創建當前日期
Date(int year, int month, int date) 創建指定日期的對象,已過時
Date(long date)
常用的方法
getYear():獲取日期中的年份
getMonth():獲取日期的月份,取值返回0~11
getDate():獲取日期部分
after(Date when) 測試此日期是否在指定日期之後。
before(Date when) 測試此日期是否在指定日期之前。
.....
Date date = new Date();
2)DateFormat/SimpleDateFormat
java.text.DateFormat類:是一個抽象類,可以對日期進行格式化輸出或轉換
java.text.SimpleDateFormat繼承類DateFormat類
常用的構造方法
SimpleDateFormat(String pattern) :用給定的模式和默認語言環境的日期格式符號構造 SimpleDateFormat。
yyyy:年份 MM:月份 dd:日期 HH:小時(24進制) hh:小時(12進制) mm:分鐘 ss:秒
常用的方法:
format(Date date):將日期按照指定的格式轉換為字符串
parse(String DateStr):將字符串轉換為日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
3)java.util.Calendar
java.util.Calendar:日歷,抽象類
常用的屬性:
YEAR:代表年份
MONTH:代表月份
DATE:日期
DAY_OF_MONTH:get 和 set 的字段數字,指示一個月中的某天。
DAY_OF_WEEKget 和 set 的字段數字,指示一個星期中的某天。
DAY_OF_YEAR get 和 set 的字段數字,指示當前年中的天數
WEEK_OF_MONTH get 和 set 的字段數字,指示當前月中的星期數。
WEEK_OF_YEAR get 和 set 的字段數字,指示當前年中的星期數
....
常用的方法:
getInstance():獲取日歷的實例
get(int field):獲取日歷中指定日期部分
set(int field,int value):設置日歷中的指定部分
add(int field,int value):增加日期中的指定部分
getActualMaximum(int field) 給定此 Calendar 的時間值,返回指定日歷字段可能擁有的最大值。
5 Math和Random類
1)java.lang.Math 類包含用於執行基本數學運算的方法,如初等指數、對數、平方根和三角函數。
常用的屬性:PI圓周率
abs(xxx a): 返回 xxx值的絕對值。
floor(double a) 返回最大的(最接近正無窮大)double 值,該值小於等於參數,並等於某個整數。
round(double a) 返回最接近參數的 long。四舍五入
max(int a, int b) 返回兩個 int 值中較大的一個。
pow(double a, double b) 返回第一個參數的第二個參數次冪的值。
sqrt(double a) 返回正確舍入的 double 值的正平方根。
Randrom() 類用於生產隨機數, 返回帶正號的 double 值,該值大於等於 0.0 且小於 1.0。
nextInt(int seed) 生成指定範圍的隨機數
2) java.util.Random類:此類的實例用於生成偽隨機數流.
常用的構造方法
Random() 創建一個新的隨機數生成器。
常用的方法:
nextInt(): 返回一個int類型的隨機數
nextInt(int n); 返回一個偽隨機數,它是取自此隨機數生成器序列的、在 0(包括)和指定值(不包括)之間均勻分布的 int 值
6 枚舉
枚舉是從JDK1.5之後新增的特性, 枚舉本質上也是一個類,在枚舉中定義值都是常量,默認的修飾符public static final
如何定義枚舉:
修飾符 enum 枚舉名{
值1,值2....;
}
作業: 實現用戶註冊驗證功能,要求用戶名長度不少於8位並且只能有字母和數字組成,密碼長度不小於6位並且與確認密碼相同。
10 常用類