Java面試題程序相關(guān)_第1頁(yè)
Java面試題程序相關(guān)_第2頁(yè)
Java面試題程序相關(guān)_第3頁(yè)
Java面試題程序相關(guān)_第4頁(yè)
Java面試題程序相關(guān)_第5頁(yè)
已閱讀5頁(yè),還剩65頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Java面試題總結(jié)一、選擇題1.要?jiǎng)?chuàng)建一個(gè)類(lèi),下面的哪種定義方式是正確的?A.staticclassFooBar{} B.privateclassFooBar{}C.a(chǎn)bstractclassFooBar{} D.finalabstractclassFooBar{}1.答案(C)A.用static可以修飾內(nèi)部類(lèi),普通類(lèi)是不允許聲明為靜態(tài)的,只有內(nèi)部類(lèi)才可以。被static修飾的內(nèi)部類(lèi)可以直接作為一個(gè)普通類(lèi)來(lái)使用,而不需實(shí)例一個(gè)外部類(lèi)。B不能用protected和private修飾類(lèi)。D.abstract修飾的類(lèi)是用于繼承的,而final修飾的類(lèi)不能被繼承,故final和abstract不能同時(shí)修飾類(lèi)。

2.根據(jù)下面的代碼,哪一個(gè)結(jié)論是正確的?

PublicclassTest{ PublicintMethodA(){ Staticinti=0; i++; returni; } }

A.編譯失敗 B.編譯成功,并且返回值為“0”C.編譯成功,并且返回值為“1”D.編譯成功,并且返回值為“2”2.答案(A)

解析:static變量是不屬于方法的,是屬于一個(gè)類(lèi)的,

是在類(lèi)加載的時(shí)候執(zhí)行的(也就是初始化),而方法則是在類(lèi)實(shí)例化的時(shí)候才開(kāi)始執(zhí)行,

所以在方法里定義static變量不可以,所以會(huì)出現(xiàn)編譯錯(cuò)誤。

3.在下面的代碼中,當(dāng)“m”的值為“0”時(shí)輸出的結(jié)果是什么?Switch(m){ case0:System.out.println(“0”); case1:System.out.println(“1”); default:System.out.println(“A”); case2:System.out.println(“2”); case3:System.out.println(“3”);}A.編譯失敗 B.編譯成功,并且輸出01AC.編譯成功,并且輸出01A23 D.編譯成功,并且輸出0123A3答案(C)原因:case語(yǔ)句分支中沒(méi)有break語(yǔ)句,將執(zhí)行所有的分支。4.在下面的代碼中,輸出的結(jié)果是什么?publicclassTest{ staticbooleanfoo(charc) { System.out.println(c); returntrue; } publicstaticvoidmain(String[]args){ inti=0; for(foo('A');foo('B')&&(i<2);foo('C')) { i++; foo('D'); } }}A.編譯失敗 B.在運(yùn)行時(shí)拋出異常C.ABDCBDCB D.ABCDABCD4.答案(C)&&連接多個(gè)表達(dá)式時(shí),當(dāng)有一個(gè)表達(dá)式為假時(shí)整個(gè)表達(dá)式的值為假。foo()函數(shù)的返回值為真;退出循環(huán)的條件i值等于2;5.根據(jù)下面的代碼,哪一個(gè)結(jié)論是正確的?publicclassIfElse{ publicstaticvoidmain(Stringargs[]){ if(odd(5)){ System.out.println("odd");} else{ System.out.println("even");} } publicstaticintodd(intx){returnx%2;}}A.輸出結(jié)果為“odd” B.輸出結(jié)果為“even”C.由第3行代碼導(dǎo)致編譯失敗 D.由第8行代碼導(dǎo)致編譯失敗5.答案(C)Java當(dāng)中的布爾類(lèi)型值只有True和False,odd(5)的返回值為3,所以會(huì)出現(xiàn)編譯錯(cuò)誤。6.再下面的代碼中,輸出的結(jié)果為?publicclassStringTest{ publicstaticvoidmain(String[]args){ Stringstr1="Iamstring"; Stringstr2="Iamstring"; Stringstr3=newString(str2); System.out.println(str1==str2); System.out.println(str1==str3); System.out.println(str1.equals(str2)); System.out.println(str1.equals(str3)); }}A.true,true,true,true B.true,false,true,trueC.true,false,true,false D.false,true,true,false6答案(B)String字符串具有常量不變性。"Iamstring"常量池堆"Iamstring"Str1Str2Str3==和equals的判別規(guī)則:

(1)基本數(shù)據(jù)類(lèi)型:只比較值的大?。?)引用數(shù)據(jù)類(lèi)型先比較地址值是否相等再比較值是否相等。7.在下邊的代碼中,若A處出現(xiàn)異常,執(zhí)行的結(jié)果是什么?publicclassTest{ publicstaticvoidmain(String[]args){ try{ System.out.println("BeforeA"); A System.out.println("AfterA"); }catch(Exceptione){ System.out.println("catch"); }finally{ System.out.println("finally"); } }}A.輸出“BeforeA”,“AfterA”,“catch”,“finally” B.輸出“BeforeA”,“catch”,“finally” C.輸出“BeforeA”,“catch” D.輸出“catch”,“finally” 7答案(B)

當(dāng)發(fā)生異常時(shí),跳轉(zhuǎn)到catch語(yǔ)句,最后執(zhí)行finally.8.根據(jù)下面的代碼,哪一種結(jié)論是正確的?privatebooleancheckFlag(Strings){ booleanflag=false; if(s.equals("error")){ flag=true; returnflag; }}A.編譯正常,運(yùn)行正常 B.編譯正常,運(yùn)行異常C.編譯異常 8(C)當(dāng)if語(yǔ)句條件為假時(shí),沒(méi)有返回值,故編譯不通過(guò)。9.根據(jù)下面的代碼,哪一種結(jié)論是正確的?

intindex=1;Boolean[]test=newBoolean[3];Booleanfoo=test[index];A.foo=0 B.foo=null C.foo=true D.foo=false9答案(D)解析:布爾類(lèi)型的變量默認(rèn)值為false.10.根據(jù)下面的代碼,哪一種結(jié)論是正確的?

classA{ publicvoidmain(String[]args){ Strings; testString(s);} publicvoidTestString(StringstrTemp){ if(strTemp.equals("")||strTemp==null){ System.out.println("stTempis''ornull"); }else{ System.out.println("strTempisnot"andnull); } }}A.輸出“strTempis''ornull” B.輸出“strTempisnot''andnull” C.編譯時(shí)出現(xiàn)錯(cuò)誤 D.編譯成功,并且運(yùn)行正常10答案(C)

s未被賦初值,應(yīng)改為Strings=null或Strings=newString();System.out.println("strTempisnot"andnull);中應(yīng)為字符串.11.在繼承了A類(lèi)的子類(lèi)中,下面的那兩個(gè)方法是正確的?

classA{protectedintmethod1(inta,intb){return0;}}A.publicintmethod1(inta,intb){return0;}B.privateintmethod1(inta,intb){return0;}C.privateintmethod1(inta,longb){return0;}D.publicshortmethod1(inta,intb){return0;}E.staticprotectedintmethod1(inta,intb){return0;}11答案(BC)A項(xiàng)錯(cuò)誤原因,問(wèn)權(quán)限擴(kuò)大,方法重載要求訪問(wèn)權(quán)限不能擴(kuò)大D項(xiàng)錯(cuò)誤原因,參數(shù)列表沒(méi)有改變,不能構(gòu)成重載。E項(xiàng)錯(cuò)誤原因,既不能構(gòu)成重構(gòu)也不能構(gòu)成重載。二、問(wèn)答題

1.請(qǐng)寫(xiě)出下面代碼中的輸出結(jié)果:父類(lèi):publicclassFatherClass{publicFatherClass() { System.out.println("FatherClassCreate"); }}子類(lèi):publicclassChildClassextendsFatherClass{ publicChildClass() { System.out.println("ChildClassCreate"); } publicstaticvoidmain(String[]args) { FatherClassfc=newFatherClass(); ChildClasscc=newChildClass(); }}輸出結(jié)果為:1.輸出結(jié)果:FatherClassCreateFatherClassCreateChildClassCreate解析:程序執(zhí)行到newFatherClass()時(shí),調(diào)用父類(lèi)的構(gòu)造方法輸出:FatherClassCreate。程序執(zhí)行到newChildClass()時(shí),編譯器先調(diào)用父類(lèi)默認(rèn)無(wú)參的構(gòu)造方法,輸出:FatherClassCreate,再調(diào)用本身的構(gòu)造方法輸出:ChildClassCreat。2.請(qǐng)說(shuō)明:shorts1=1;s1=s1+1;有什么錯(cuò)?shorts1=1;s1+=1;有什么錯(cuò)?2解析:(1)s=s+1;此表達(dá)式的之行分兩步,第一步將s的值和1相加,然后將s加1的值賦給s.在s和1相加的過(guò)程中,s首先轉(zhuǎn)換成int型再和1相加,得到一個(gè)整型的值,再賦給s,而s的類(lèi)型是short,將一個(gè)int型值賦給一個(gè)short型值,會(huì)發(fā)生編譯錯(cuò)誤.(2)s+=1;+=符號(hào)運(yùn)行時(shí)會(huì)發(fā)生自動(dòng)類(lèi)型轉(zhuǎn)換。3.請(qǐng)說(shuō)明:Math.round(11.5)等于多少?Math.round(-11.5)等于多少?3.答案(1)12(2)-11三.程序找錯(cuò)1.abstractclassName{

privateStringname;

publicabstractbooleanisStupidName(Stringname){}}1答案:錯(cuò)誤.錯(cuò)因:抽象方法,沒(méi)有方法體,以分號(hào)結(jié)束。正形式如下:abstractclassName{

privateStringname;

publicabstractbooleanisStupidName(Stringname);}2.publicclassSomething{

voiddoSomething(){

privateStrings="";

intl=s.length();

}}2答案:錯(cuò)誤。錯(cuò)因:訪問(wèn)修飾符(public,protected,Private)不能修飾局部變量,可以修飾成員變量。3.abstractclassSomething{

privateabstractStringdoSomething();}答案:錯(cuò)誤

錯(cuò)因:Private修飾的方法不能被繼承,而abstract修飾的方法是用來(lái)繼承的,所以二者不能同時(shí)修飾方法。

4.publicclassSomething{

publicintaddOne(finalintx){

return++x;

}}4答案:錯(cuò)誤。錯(cuò)因:final關(guān)鍵字修飾的變量是常量,其值不能改變。5.publicclassSomething{

publicstaticvoidmain(String[]args){

Othero=newOther();

newSomething().addOne(o);

}

publicvoidaddOne(finalOthero){

o.i++;

}}classOther{

publicinti;}5答案:正確。原因:在addOnemethod中,參數(shù)o被修飾成final。如果在addOnemethod里我們修改了o的引用(比如:o=newOther();),那么如同上例這題也是錯(cuò)的。但這里修改的是o的成員變量,而o的引用并沒(méi)有改變。6.classSomething{

inti;

publicvoiddoSomething(){

System.out.println("i="+i);

}}6答案:正確。原因:輸出的是"i=0"。inti屬於instantvariable(實(shí)例變量,或叫成員變量)。instantvariable有default的defaultvalue是0。7.classSomething{

finalinti;

publicvoiddoSomething(){

System.out.println("i="+i);

}}7答案:錯(cuò)誤錯(cuò)因:final修飾的成員變量沒(méi)有初始值。必須在constructor(構(gòu)造器)結(jié)束之前被賦予一個(gè)明確的值??梢孕薷臑?finalinti=0;"。8.publicclassSomething{

publicstaticvoidmain(String[]args){

Somethings=newSomething();

System.out.println("s.doSomething()returns"+doSomething());

}

publicStringdoSomething(){

return"Dosomething...";

}}8答案:錯(cuò)誤錯(cuò)因:靜態(tài)方法中不能直接調(diào)用非靜態(tài)的方法。因?yàn)轭?lèi)中static塊程序是在類(lèi)被裝載的時(shí)候開(kāi)始執(zhí)行。而不是在創(chuàng)建對(duì)象的時(shí)候執(zhí)行??筛某?System.out.println("s.doSomething()returns"+s.doSomething());"。聲明為static的方法有以下幾條限制:◆它們僅能調(diào)用其他的static方法?!羲鼈冎荒茉L問(wèn)static數(shù)據(jù)?!羲鼈儾荒芤匀魏畏绞揭胻his或super9.此處,Something類(lèi)的文件名叫OtherThing.javaclassSomething{

privatestaticvoidmain(String[]something_to_do){

System.out.println("Dosomething...");

}}

9.答案:運(yùn)行時(shí)錯(cuò)誤Main方法聲明為private,編譯器找不到main方法。10.interfaceA{

intx=0;}classB{

intx=1;}classCextendsBimplementsA{

publicvoidpX(){

System.out.println(x);

}

publicstaticvoidmain(String[]args){

newC().pX();

}}答案:錯(cuò)誤。錯(cuò)因:在編譯時(shí)會(huì)發(fā)生錯(cuò)誤(錯(cuò)誤描述不同的JVM有不同的信息,意思就是未明確的x調(diào)用,兩個(gè)x都匹配(就象在同時(shí)importjava.util和java.sql兩個(gè)包時(shí)直接聲明Date一樣)。對(duì)于父類(lèi)的變量,可以用super.x來(lái)明確,而接口的屬性默認(rèn)隱含為publicstaticfinal.所以可以通過(guò)A.x來(lái)明確。11.interfacePlayable{

voidplay();} interfaceBounceable{

voidplay();}interfaceRollableextendsPlayable,Bounceable{

Ballball=newBall("PingPang");}classBallimplementsRollable{

privateStringname;

publicStringgetName(){

returnname;

}

publicBall(Stringname){

=name;

}

publicvoidplay(){

ball=newBall("Football");

System.out.println(ball.getName());

}}11.答案:錯(cuò)誤原因:接口中的變量默認(rèn)為public,final.凡是前面有了final修飾符后,該對(duì)象或變量將不能更改,對(duì)象使用final后,你只能改變此對(duì)象屬性,而不能其指向其它對(duì)象。接口Rollable中的ball變量為public,static,final,classBall實(shí)現(xiàn)了接口Rollable,此時(shí)classBall中的ball有final關(guān)鍵字修飾,而語(yǔ)句“ball=newBall("Football")”企圖使ball指象一個(gè)新的對(duì)象,因此會(huì)出現(xiàn)編譯錯(cuò)誤。

JAVA編程題1.現(xiàn)在輸入n個(gè)數(shù)字,以逗號(hào),分開(kāi);然后可選擇升或者降序排序;按提交鍵就在另一頁(yè)面顯示按什么排序,結(jié)果為,提供reset.importjava.util.*;public

classbycomma{public

staticString[]splitStringByComma(Stringsource){if(source==null||source.trim().equals(""))return

null;StringTokenizercommaToker=newStringTokenizer(source,",");String[]result=newString[commaToker.countTokens()];inti=0;while(commaToker.hasMoreTokens()){result[i]=commaToker.nextToken();i++;}returnresult;}public

static

voidmain(Stringargs[]){String[]s=splitStringByComma("5,8,7,4,3,9,1");int[]ii=new

int[s.length];for(inti=0;i<s.length;i++){ii[i]=Integer.parseInt(s[i]);}Arrays.sort(ii);//ascfor(inti=0;i<s.length;i++){System.out.println(ii[i]);}//descfor(inti=(s.length-1);i>=0;i--){System.out.println(ii[i]);}}}2.金額轉(zhuǎn)換,阿拉伯?dāng)?shù)字的金額轉(zhuǎn)換成中國(guó)傳統(tǒng)的形式如:(¥1011)->(一千零一拾一元整)輸出。packagecom.sitinspring.cuc;/***每一位數(shù)字*@author:sitinspring(junglesong@)*@date:2008-3-27*/publicclassCnChar{ /** *阿拉伯字母 */ privatechararabicNumber;

/** *對(duì)應(yīng)的漢字大寫(xiě)數(shù)字 */ privateStringchineseNumber;

/** *單位(拾佰仟) */ privateStringunit;

/** *構(gòu)造函數(shù) *@paramarabicNumber *@paramunit */ publicCnChar(chararabicNumber,Stringunit){ this.arabicNumber=arabicNumber; this.chineseNumber=CnUpperCaser.getCnNumberFrom(arabicNumber); this.unit=unit; }

publicStringtoString(){ if(arabicNumber=='0'){ returnchineseNumber; } else{ returnchineseNumber+unit; } }}packagecom.sitinspring.cuc;importjava.util.ArrayList;importjava.util.List;/***按四位分出的每一段*@author:sitinspring(junglesong@)*@date:2008-3-27*/publicclassCnPiece{ /** *分段字符串序列 */ privateList<CnChar>cnchars;

/** *單位(兆億萬(wàn)) */ privateStringunit;

/** *構(gòu)造函數(shù) * */ publicCnPiece(Stringpiece,Stringunit){ this.unit=unit;

cnchars=newArrayList<CnChar>(); for(inti=piece.length()-1;i>=0;i--){ cnchars.add(newCnChar(piece.charAt(i),CnUpperCaser.getPieceUnitBy(i))); } }

/** *取得分段文字 *@paramisTail:是否最后一段 *@return */ publicStringgetString(booleanisTail){ Stringretval="";

for(CnCharcnChar:cnchars){ retval+=cnChar.toString(); }

//將末尾的一堆零替換掉 retval=retval.replaceAll("[零]+","零"); retval=retval.replaceAll("(零+)($)","$2");//零在末尾則去掉*/

//若無(wú)數(shù)字則把單位也去掉,否則加上單位 if(retval.length()>0){ retval+=unit; }

returnretval; }}packagecom.sitinspring.cuc;importjava.math.BigDecimal;importjava.util.ArrayList;importjava.util.Hashtable;importjava.util.List;importjava.util.Map;importjava.util.regex.Matcher;importjava.util.regex.Pattern;/***將阿拉伯?dāng)?shù)字轉(zhuǎn)換成漢語(yǔ)大寫(xiě)數(shù)字的類(lèi)**@authorsitinspring*@since2008-03-25*@date2008-03-27*/publicclassCnUpperCaser{ /** *用于存儲(chǔ)整數(shù)部分 */ privateStringintegerPart;

/** *用于存儲(chǔ)小數(shù)部分 */ privateStringfloatPart;

/** *用于存儲(chǔ)0-9大寫(xiě)的哈希表 */ privatestaticfinalMap<Character,String>zerotoNineHt;

/** *用于存儲(chǔ)拾佰仟大寫(xiě)的哈希表 */ privatestaticfinalMap<Integer,String>thHuTenHt;

/** *靜態(tài)構(gòu)造函數(shù),用于初始化zerotoNineHt和thHuTenHt */ static{ zerotoNineHt=newHashtable<Character,String>(); zerotoNineHt.put('0',"零"); zerotoNineHt.put('1',"壹"); zerotoNineHt.put('2',"貳"); zerotoNineHt.put('3',"叁"); zerotoNineHt.put('4',"肆"); zerotoNineHt.put('5',"伍"); zerotoNineHt.put('6',"陸"); zerotoNineHt.put('7',"柒"); zerotoNineHt.put('8',"捌"); zerotoNineHt.put('9',"玖");

thHuTenHt=newHashtable<Integer,String>(); thHuTenHt.put(0,""); thHuTenHt.put(1,"拾"); thHuTenHt.put(2,"佰"); thHuTenHt.put(3,"仟"); }

/** *取得拾佰仟等單位 *@paramlevel *@return */ publicstaticStringgetPieceUnitBy(intindex){ if(thHuTenHt.containsKey(index)){ returnthHuTenHt.get(index); } else{ return""; } }

/** *由數(shù)字取得中國(guó)大寫(xiě)漢字 *@paramnumber *@return */ publicstaticStringgetCnNumberFrom(charnumber){ if(zerotoNineHt.containsKey(number)){ returnzerotoNineHt.get(number); } else{ return""; } }

/** *取得萬(wàn)億兆等單位 *@paramlevel *@return */ privatestaticStringgetUnitBy(intlevel){ Stringretval="";

for(inti=0;i<level;i++){ retval+="萬(wàn)"; }

//把萬(wàn)萬(wàn)萬(wàn)變成兆 retval=retval.replaceAll("萬(wàn){3}","兆");

//把萬(wàn)萬(wàn)變成億 retval=retval.replaceAll("萬(wàn){2}","億");

//顛倒回來(lái),因?yàn)閯偛攀翘鎿Q的結(jié)果是兆》億》萬(wàn) retval=reverseStr(retval);

returnretval; }

/** *得到逆序字符串 *@paramstr *@return */ privatestaticStringreverseStr(Stringstr){ Stringretval="";

for(inti=str.length()-1;i>-1;i--){ retval+=str.charAt(i); }

returnretval; }

/** *構(gòu)造函數(shù) *@paramnumber *@throwsNumberFormatException */ publicCnUpperCaser(floatnumber)throwsNumberFormatException{ this(String.valueOf(number)); }

/** *構(gòu)造函數(shù) *@paramnumber *@throwsNumberFormatException */ publicCnUpperCaser(doublenumber)throwsNumberFormatException{ this(String.valueOf(number)); }

/** *構(gòu)造函數(shù) *@paramnumber *@throwsNumberFormatException */ publicCnUpperCaser(intnumber)throwsNumberFormatException{ this(String.valueOf(number)); }

/** *構(gòu)造函數(shù) *@paramnumber *@throwsNumberFormatException */ publicCnUpperCaser(longnumber)throwsNumberFormatException{ this(String.valueOf(number)); }

/** *構(gòu)造函數(shù) *@paramnumber *@throwsNumberFormatException */ publicCnUpperCaser(Stringnumber)throwsNumberFormatException{ StringformalNumber=formatNumber(number);

//劈分以給整數(shù)部分和小數(shù)部分賦值 String[]arr=formalNumber.split("[.]"); if(arr.length==2){ //有小數(shù)點(diǎn) integerPart=arr[0]; floatPart=arr[1]; } else{ //無(wú)小數(shù)點(diǎn) integerPart=arr[0]; } }

publicStringtoString(){ Stringretval="";

if(integerPart!=null){ //取得整數(shù)部分的大寫(xiě)漢字表示 retval+=parseIntegerPart(); }

if(floatPart!=null){ //取得小數(shù)部分的大寫(xiě)漢字表示 retval+=parseFloatPart(); } else{ retval+="整"; }

returnretval; }

/** *得到整數(shù)部分的漢字大寫(xiě)表示 *@return */ privateStringparseIntegerPart(){ Stringretval="";

//將整數(shù)部分逆序,因?yàn)樾枰聪蜃x取 StringreverseIntegerPart=reverseStr(integerPart);;

//將整數(shù)部分按四位分段 Patternp=Ppile("\\d{4}",Pattern.CASE_INSENSITIVE); Matcherm=p.matcher(reverseIntegerPart); StringBuffersb=newStringBuffer(); booleanresult=m.find(); while(result){ //每找到四位放一個(gè)逗號(hào) m.appendReplacement(sb,m.group(0)+","); result=m.find(); } m.appendTail(sb);

//按逗號(hào)劈分,得到四位分組數(shù)據(jù)的數(shù)組 String[]arr=sb.toString().split(","); List<CnPiece>list=newArrayList<CnPiece>(); for(inti=arr.length-1;i>=0;i--){ list.add(newCnPiece(arr[i],getUnitBy(i))); }

intn=list.size(); for(inti=0;i<n;i++){ CnPiececnPiece=list.get(i); retval+=cnPiece.getString(i==n-1); }

returnretval; }

/** *得到小數(shù)部分的漢字大寫(xiě)表示 *@return */ privateStringparseFloatPart(){ Stringretval="點(diǎn)";

for(inti=0;i<floatPart.length();i++){ retval+=getCnNumberFrom(floatPart.charAt(i)); }

returnretval; }

/** *對(duì)輸入的字符串進(jìn)行驗(yàn)證,如果不能轉(zhuǎn)化為數(shù)字形式則拋出數(shù)字轉(zhuǎn)化異常 *,注意這是一個(gè)運(yùn)行時(shí)異常(非檢查型異常),程序不用顯式捕獲 *@paramnumber *@throwsNumberFormatException */ privateStringformatNumber(Stringnumber)throwsNumberFormatException{ return(newBigDecimal(number)).toString(); }

privatestaticStringgetFommetedStr(Stringstr){ //將整數(shù)部分逆序,因?yàn)樾枰聪蜃x取 StringreverseIntegerPart="";

for(inti=str.length()-1;i>-1;i--){ reverseIntegerPart+=str.charAt(i); }

//將整數(shù)部分按四位分段 Patternp=Ppile("\\d{4}",Pattern.CASE_INSENSITIVE); Matcherm=p.matcher(reverseIntegerPart); StringBuffersb=newStringBuffer(); booleanresult=m.find(); while(result){ //每找到四位放一個(gè)逗號(hào) m.appendReplacement(sb,m.group(0)+","); result=m.find(); } m.appendTail(sb);

reverseIntegerPart=sb.toString();

Stringretval="";

for(inti=reverseIntegerPart.length()-1;i>-1;i--){ retval+=reverseIntegerPart.charAt(i); }

returnretval; }

publicstaticvoidmain(String[]args){

//newChineseUpperCaser("123456789123456789123456089123456789123456789123450780").toString(); /*String[]arr={"1.543524304302432","12.432423432","123.454235","1234","12345","123456","1234567","12345678","123456789","1234567891","12345678912","123456789123","1234567891234","12345678912345","123456789123456","1234567891234567","12345678912345678","123456789123456789","123456789123456789123456089123456789123456789123450780","0","00","000","0000","01","001","0001","00001","10","100","1000","10000","101","1001","10001","100001","1.23","21.234","243400031.233234","5400035.980","543.6545"}; //String[]arr={"0","00","000","0000","01","001","0001","00001","10","100","1000","10000","101","1001","10001","100001"}; //String[]arr={"1.23","21.234","243400031.233234","5400035.980","543.6545"}; for(Stringstr:arr){ System.out.println("阿拉伯?dāng)?shù)字等于:"+str+"大寫(xiě)漢字等于:"+newChineseUpperCaser(str)); }

newChineseUpperCaser("12345.6789.123456").toString(); */ /*Stringnumber="10000000"; for(inti=0;i<50;i++){ number+="0"; System.out.println("阿拉伯?dāng)?shù)字等于:"+getFommetedStr(number)+"大寫(xiě)漢字等于:"+newCnUpperCaser(number)); } */

/*System.out.println("------普通測(cè)試-------------------------------"); String[]arr={"1","123","1234","12345","123456","1234567","12345678","123456789","123456789123456789","123456789123456789123456789","123456789123456789123456789","1234567891234567890123456789"}; for(Stringstr:arr){ System.out.println("阿拉伯?dāng)?shù)字等于:"+getFommetedStr(str)+"大寫(xiě)漢字等于:"+newCnUpperCaser(str)); } */ Stringnumber="1"; for(inti=0;i<50;i++){ System.out.println("阿拉伯?dāng)?shù)字等于:"+getFommetedStr(number)+"大寫(xiě)漢字等于:"+newCnUpperCaser(number)); number+="0"; }

System.out.println("------零測(cè)試一-------------------------------"); number="1"; for(inti=0;i<50;i++){ number+="0"; System.out.println("阿拉伯?dāng)?shù)字等于:"+getFommetedStr(number+"1")+"大寫(xiě)漢字等于:"+newCnUpperCaser(number+"1")); }

System.out.println("------零測(cè)試二-------------------------------"); number="1"; for(inti=0;i<50;i++){ number+="01"; System.out.println("阿拉伯?dāng)?shù)字等于:"+getFommetedStr(number)+"大寫(xiě)漢字等于:"+newCnUpperCaser(number)); }

System.out.println("------零測(cè)試三-------------------------------"); String[]arr2={"1","101","1001","100101","1000100101","100001000100101","1000000100001000100101","10100100010000100000100000010"}; for(Stringstr:arr2){ System.out.println("阿拉伯?dāng)?shù)字等于:"+getFommetedStr(str)+"大寫(xiě)漢字等于:"+newCnUpperCaser(str)); }

System.out.println("------常規(guī)測(cè)試三-------------------------------"); String[]arr={"1.543524304302432","12.432423432","123.454235","1234","12345","123456","1234567","12345678","123456789","1234567891","12345678912","123456789123","1234567891234","12345678912345","123456789123456","1234567891234567","12345678912345678","123456789123456789","123456789123456789123456089123456789123456789123450780","0","00","000","0000","01","001","0001","00001","10","100","1000","10000","101","1001","10001","100001","1.23","21.234","243400031.233234","5400035.980","543.6545"}; //String[]arr={"0","00","000","0000","01","001","0001","00001","10","100","1000","10000","101","1001","10001","100001"}; //String[]arr={"1.23","21.234","243400031.233234","5400035.980","543.6545"}; for(Stringstr:arr){ System.out.println("阿拉伯?dāng)?shù)字等于:"+str+"大寫(xiě)漢字等于:"+newCnUpperCa

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論