Java筆記17 JAVA常用函式

2021-09-20 23:40:16 字數 4091 閱讀 6124

** 

* 根據傳入的格式獲取日期 

*  * @param format 

*            如:yyyymmdd || mm/dd/yyyy, hh:mm:ss 

* @return 字串的日期  */

publicstring getsysdate(string format)catch(exception e)catch(exception e)catch(exception ex)elseelsecatch(exception e)elsecatch(parseexception e) ; // 段內位置表示 

charvunit = ; // 段名表示 

chardigit = ; // 數字表示 

longmidval = (long) (value * 100

); // 轉化成整形 

string valstr = string.valueof(midval); // 轉化成字串 

string head = valstr.substring(0

, valstr.length() - 2

); // 取整數部分 

string rail = valstr.substring(valstr.length() - 2

); // 取小數部分 

string prefix = ""

; // 整數部分轉化的結果 

string suffix = ""

; // 小數部分轉化的結果 

// 處理小數點後面的數 

if(rail.equals("00"

))   

).newinstance(newobject{});   

//獲得物件的所有屬性     

field fields = classtype.getdeclaredfields();   

for(inti = 0

; i < fields.length; i++)   

//獲取陣列中對應的屬性     

field field = fields[i];   

string fieldname = field.getname();   

string stringletter = fieldname.substring(0

, 1).touppercase();   

//獲得相應屬性的get***和set***方法名稱     

string getname = "get"

+ stringletter + fieldname.substring(1

);   

string setname = "set"

+ stringletter + fieldname.substring(1

);   

//獲取相應的方法     

method getmethod = classtype.getmethod(getname,newclass{});   

method setmethod = classtype.getmethod(setname,newclass);   

//呼叫源物件的get***()方法     

object value = getmethod.invoke(obj,newobject{});   

//呼叫拷貝物件的set***()方法     

setmethod.invoke(objectcopy,newobject);   

returnobjectcopy;   

//過濾特殊字元 

public

staticstring encoding(string src)elsecatch(exception ex)catch(exception e) $    

評注:表單驗證時很實用    

匹配國內**號碼:/d-/d /d-/d    

評注:匹配形式如 0511

-4405222

或 021

-87888822

-9][0

-9]    

開始    

-9]/d(?!/d)    

位數字    

匹配***:/d /d    

評注:中國的***為15

位或18

位    

評注:提取ip位址時有用    

匹配特定數字:    

^[1-9

]/d*$    //匹配正整數  

^-[1

-9]/d*$   //匹配負整數  

^-?[1

-9]/d*$   //匹配整數  

^[1-9]/d* 0

$  //匹配非負整數(正整數 + 0)  

^-[1

-9]/d* 0

$   //匹配非正整數(負整數 + 0)  

^[1-9]/d*/./d* 0

/./d*[1

-9]/d*$   //匹配正浮點數  

^-([1

-9]/d*/./d* 0

/./d*[1

-9]/d*)$  //匹配負浮點數  

^-?([1

-9]/d*/./d* 0

/./d*[1

-9]/d* 0

?/.0

+ 0)$  //匹配浮點數  

^[1-9]/d*/./d* 0

/./d*[1

-9]/d* 0

?/.0

+ 0$   //匹配非負浮點數(正浮點數 + 0)  

^(-([1

-9]/d*/./d* 0

/./d*[1

-9]/d*)) 0

?/.0

+ 0$  //匹配非正浮點數(負浮點數 + 0)  

評注:處理大量資料時有用,具體應用時注意修正    

匹配特定字串:    

^[a-za-z]+$  //匹配由26個英文本母組成的字串  

^[a-z]+$  //匹配由26個英文本母的大寫組成的字串  

^[a-z]+$  //匹配由26個英文本母的小寫組成的字串  

^[a-za-z0-9

]+$  //匹配由數字和26個英文本母組成的字串  

^/w+$  //匹配由數字、26個英文本母或者下劃線組成的字串  

評注:最基本也是最常用的一些表示式    

string.split()方法中,有時需要特殊字元,見下:   

/** 

* 點的轉義:.  ==> //u002e 

美元符號的轉義:$  ==> //u0024 

乘方符號的轉義:^  ==> //u005e 

左大括號的轉義:{  ==> //u007b 

左方括號的轉義:[  ==> //u005b 

左圓括號的轉義:(  ==> //u0028 

豎線的轉義:| ==> //u007c 

右圓括號的轉義:) ==> //u0029 

星號的轉義:*  ==> //u002a 

加號的轉義:+  ==> //u002b 

問號的轉義:?  ==> //u003f 

反斜槓的轉義:/ ==> //u005c 

豎線:    | ==>//u007c 

* */

17 Java基礎筆記 內部內

將類寫在其他類的內部,其他類的成員位置和區域性位置,這樣的類就稱為內部類。何時使用 若乙個事物內部還包含了其他可能包含的事物,比如描述一輛汽車,汽車中還包含發動機,其中發動機就可以使用內部類。1,成員內部類 內部類定義在外部的成員位置,成員內部類可以使用成員修飾,繼承,實現介面,內部類可以使用外部類...

17 Java多執行緒 執行緒狀態

一.執行緒狀態型別 1.新建狀態 new 新建立了乙個執行緒物件。2.就緒狀態 runnable 執行緒物件建立後,其他執行緒呼叫了該物件的start 方法。該狀態的執行緒位於可執行執行緒池中,變得可執行,等待獲取cpu的使用權。3.執行狀態 running 就緒狀態的執行緒獲取了cpu,執行程式 ...

Java包裝類 筆記17

基本資料型別 原生類 包裝類 byte byte short short int integer long long float float double double char character boolean boolean 例子 取long型的最大值 system.out.println l...