版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
閏年的判斷規(guī)則如下:若某個(gè)年份能被4整除但不能被100整除,則是閏年。若某個(gè)年份能被400整除,則也是閏年。classBissextile{publicstaticvoidmain(String[]arge){intyear; 〃定義輸入的年份名字為 “year”Scannerscanner=newSeanner(System.in);year=scanner.nextlnt();if(year<0||year>3000){I/_ .System.exit(0);}if((year%4==0)&&(year%100!=0)||(year%400==0))System.out.println(year+"isbissextile");else}}給定一個(gè)百分制的分?jǐn)?shù),輸出相應(yīng)的等級(jí)。90分以上 A級(jí)80~89 B級(jí)70~79 C級(jí)60~69 D級(jí)60分以下 E級(jí)classMark{publicstaticvoidmain(String[]args){//定義輸入的分?jǐn)?shù)為“mark”'且分?jǐn)?shù)會(huì)有小數(shù)doublemark;Scannerscanner=newScanner(System.in);mark=scanner.nextDouble();〃判斷是否有輸入錯(cuò)誤。if(mark<0||mark>100){System.exit(0);}/*判斷分?jǐn)?shù)的等級(jí)90分以上者A級(jí),80~89分者B級(jí),70~79分者C級(jí),60~69者D級(jí),60分以下E級(jí)*/if(mark>=90)System.out.println("thismarkisgrade\'A\'");}}編寫(xiě)程序求1+3+5+7+……+99的和值。classhe{publicstaticvoidmain(String[]args){intnumber=1;//初始值1,以后再+2遞增上去intsum=0;for(;number<100;number+=2){sum+=number;}}}4、利用for循環(huán)打印9*9表?1*1=11*2=22*2=41*3=32*3=63*3=91*4=42*4=83*4=124*4=161*5=52*5=103*5=154*5=205*5=251*6=62*6=123*6=184*6=245*6=306*6=361*7=72*7=143*7=214*7=285*7=356*7=427*7=491*8=82*8=163*8=244*8=325*8=406*8=487*8=568*8=641*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81//循環(huán)嵌套,打印九九乘法表publicclassNineNine{publicstaticvoidmain(String[]args){for(intj=1;j<1O;j++){for(intk=1;k<10;k++){ 〃老師的做法,判斷語(yǔ)句里的 k<=j,省去下列的if語(yǔ)句。if(k>j)break; //此處用continue也可以,只是效率低一點(diǎn)}}}}6輸出所有的水仙花數(shù),把謂水仙花數(shù)是指一個(gè)數(shù) 3位數(shù),其各各位數(shù)字立方和等于其本身,例如:153=1*1*1+3*3*3+5*5*5classDafodilNumber{publicstaticvoidmain(String[]args){intnumber=100; //由于水仙花數(shù)是三位數(shù),故由100開(kāi)始算起inti,j,k;//ijk分別為number的百位、十位、個(gè)位for(intsum;number<1000;number++){i=number/100;j=(number-i*100)/10;k=number-i*100-j*10;sum=i*i*i+j*j*j+k*k*k;}}}7、求a+aa+aaa+ +aaaaaaaaa=?其中a為1至9之中的一個(gè)數(shù),項(xiàng)數(shù)也要可以指定。classMultinomial{publicstaticvoidmain(String[]args){inta;〃定義輸入的ainthowMany;〃定義最后的一項(xiàng)有多少個(gè)數(shù)字Scannerscanner=newScanner(System.in);a=scanner.nextInt();howMany=scanner.nextInt();intsum=0;inta1=a;//用來(lái)保存a的初始值for(inti=1;i<=howMany;i++){sum+=a;a=10*a+a1; //這表示a的下一項(xiàng)//每次a的下一項(xiàng)都等于前一項(xiàng)*10,再加上剛輸入時(shí)的a;注意,這時(shí)的a已經(jīng)變化了}}}8、 求2/1+3/2+5/3+8/5+13/8..…前20項(xiàng)之和?classSum{publicstaticvoidmain(Sting[]args){doublesum=0;doublefenZi=2.0,fenMu=1.0; //初始的分子(fenZi)=2,分母(fenMu)=1for(inti=1;i<=20;i++){sum+=fenZi/fenMu;fenMu=fenZi; //下一項(xiàng)的分母=上一項(xiàng)的分子fenZi+=fenMu; //下一項(xiàng)的分子=上一項(xiàng)的分子加分母}}}9、 利用程序輸出如下圖形:classAsterisk{publicstaticvoidmain(String[]args){for(inti=1;i<=13;i+=2){for(intj=1;j<=i&&i+j<=14;j++){}}}}11、計(jì)算圓周率PI=4-4/3+4/5-4/7.……打印出第一個(gè)大于3.1415小于3.1416的值classPi{publicstaticvoidmain(String[]args){doublepi=0;//定義初始值doublefenZi=4; //分子為4doublefenMu=1;〃第一個(gè)4,可看作分母為1的分式,以后的分母每次遞增2pi+=(fenZi/fenMu);fenZi*=-1.0; 〃每項(xiàng)分子的變化是+4,-4,+4,-4....fenMu+=2.0; 〃分母的變化是1,3,5,7,....每項(xiàng)遞加2}歡迎閱讀12、輸入一個(gè)數(shù)據(jù)n,計(jì)算斐波那契數(shù)列(Fibonacci)的第n個(gè)值112358132134規(guī)律:一個(gè)數(shù)等于前兩個(gè)數(shù)之和//計(jì)算斐波那契數(shù)列(Fibonacci)的第n個(gè)值publicclassFibonacci{publicstaticvoidmain(Stringargs[]){intn=Integer.parseInt(args[O]);intn1=1;//第一個(gè)數(shù)intn2=1;//第二個(gè)數(shù)intsum=0;//和if(*=0){return;}if(n<=2){sum=1;}else{for(inti=3;i<=n;i++){sum=n1+n2;n1=n2;n2=sum;}}}}//計(jì)算斐波那契數(shù)列(Fibonacci)的第n個(gè)值//并把整個(gè)數(shù)列打印出來(lái)publicclassFibonacciPrint{publicstaticvoidmain(Stringargs[]){intn=Integer.parseInt(args[0]);FibonacciPrintt=newFibonacciPrint();for(inti=1;i<=n;i++){t.print(i);}}publicvoidprint(intn){intn1=1;//第一個(gè)數(shù)intn2=1;//第二個(gè)數(shù)intsum=0;//和if(n<=0){return;}if(n<=2){sum=1;}else{for(inti=3;i<=n;i++){sum=n1+n2;n1=n2;n2=sum;}}}13、求1-1/3+1/5-1/7+1/9……的值。a求出前50項(xiàng)和值。b,求出最后一項(xiàng)絕對(duì)值小于1e-5的和值。15、在屏幕上打印出n行的金字塔圖案,如,若n=5,則圖案如下:*********************//打印金字塔圖案publicclassPrintStar{publicstaticvoidmain(Stringargs[]){intcol=Integer.parselnt(args[0]);for(inti=1;i<=col;i++){//i 表示行數(shù)//打印空格for(intk=0;k<col-i;k++){}//打印星星for(intm=0;m<2*i-1;m++){}}}}16、歌德巴赫猜想,任何一個(gè)大于六的偶數(shù)可以拆分成兩個(gè)質(zhì)數(shù)的和打印出所有的可能//任何一個(gè)大于六的偶數(shù)可以拆分成兩個(gè)質(zhì)數(shù)的和//打印出所有的可能publicclassGedebahe{publicstaticvoidmain(Stringargs[]){intnum=Integer.parseInt(args[0]);if(num<=6){return;}if(num%2!=0){return;}Gedebaheg=newGedebahe();//1不是質(zhì)數(shù),2是偶數(shù),因此從3開(kāi)始循環(huán)for(inti=3;i<=num/2;i++){if(i%2==0){//如果為偶數(shù),退出本次循環(huán)continue;//當(dāng)i與num-i都為質(zhì)數(shù)時(shí),滿足條件,打印if(g.isPrime(i)&&g.isPrime(num-i)){}}}第4章數(shù)組定義一個(gè)int型的一維數(shù)組,包含10個(gè)元素,分別賦一些隨機(jī)整數(shù),然后求出所有元素的最大值,最小值,平均值,和值,并輸出出來(lái)。classArrayNumber{publicstaticvoidmain(String[]args){int[]arrayNumber;arrayNumber=newint[10];//填入隨機(jī)的10個(gè)整數(shù)for(inti=0;i<arrayNumber」ength;i++){arrayNumber[i]=(int)(100*Math.random());System.out.print(arrayNumber[i]+"");}intmax=arrayNumber[O];intmin=arrayNumber[0];intsum=0;for(inti=0;i<arrayNumber」ength;i++){if(max<arrayNumber[i])max=arrayNumber[i];//求最大值if(min>arrayNumber[i])min=arrayNumber[i]; //求最小值sum+=arrayNumber[i];}嚴(yán)b[}}定義一個(gè)int型的一維數(shù)組,包含10個(gè)元素,分別賦值為1~10,然后將數(shù)組中的元素都向前移一個(gè)位置,即,a[0]=a[1],a[1]=a[2],最后一個(gè)元素的值是原來(lái)第一個(gè)元素的值,然后輸出這個(gè)數(shù)組。定義一個(gè)int型的一維數(shù)組,包含40個(gè)元素,用來(lái)存儲(chǔ)每個(gè)學(xué)員的成績(jī),循環(huán)產(chǎn)生 40個(gè)0~100之間的隨機(jī)整數(shù),將它們存儲(chǔ)到一維數(shù)組中,然后統(tǒng)計(jì)成績(jī)低于平均分的學(xué)員的人數(shù),并輸出出來(lái)。(選做)承上題,將這40個(gè)成績(jī)按照從高到低的順序輸出出來(lái)。(選做)編寫(xiě)程序,將一個(gè)數(shù)組中的元素倒排過(guò)來(lái)。例如原數(shù)組為 1,2,3,4,5;則倒排后數(shù)組中的值為5,4,3,2,1。要求定義一個(gè)int型數(shù)組a,包含100個(gè)元素保存100個(gè)隨機(jī)的4位數(shù)。再定義一個(gè)int型數(shù)組b,包含10個(gè)元素。統(tǒng)計(jì)a數(shù)組中的元素對(duì)10求余等于0的個(gè)數(shù),保存到b[0]中;對(duì)10求余等于1的個(gè)數(shù),保存到b[1]中,……依此類推。classRemain{publicstaticvoidmain(String[]args){int[]a=newint[100];〃保存100個(gè)隨機(jī)4位數(shù)到a中歡迎閱讀for(inti=0;i<a」ength;i++){a[i]=(int)(1000*Math.random());}//統(tǒng)計(jì)a數(shù)組中的元素對(duì)10求余的各個(gè)的數(shù)目int[]b=newint[10];intk,sum;for(intj=0;j<b」ength;j++){for(k=0,sum=0;k<a.length;k++){if((a[k]%10)==j)sum++;}b[j]=sum;}}}定義一個(gè)20*5的二維數(shù)組,用來(lái)存儲(chǔ)某班級(jí)20位學(xué)員的5門(mén)課的成績(jī);這5門(mén)課按存儲(chǔ)順序依次為:coreC++,coreJavaServlet,JSP和EJB。循環(huán)給二維數(shù)組的每一個(gè)元素賦 0~100之間的隨機(jī)整數(shù)。按照列表的方式輸出這些學(xué)員的每門(mén)課程的成績(jī)。要求編寫(xiě)程序求每個(gè)學(xué)員的總分,將其保留在另外一個(gè)一維數(shù)組中。要求編寫(xiě)程序求所有學(xué)員的某門(mén)課程的平均分。classStudent{publicstaticvoidmain(String[]args){int[][]mark=newint[20][5];//給學(xué)生賦分?jǐn)?shù)值,隨機(jī)生成for(inti=0;)}}//未完成完成九宮格程序在井字形的格局中(只能是奇數(shù)格局),放入數(shù)字(數(shù)字由),使每行每列以及斜角線的和都相等經(jīng)驗(yàn)規(guī)則:從1開(kāi)始按順序逐個(gè)填寫(xiě);1放在第一行的中間位置;下一個(gè)數(shù)往右上角 45度處填寫(xiě);如果單邊越界則按頭尾相接地填;如果有填寫(xiě)沖突,則填到剛才位置的底下一格;如果有兩邊越界,則填到剛才位置的底下一格。個(gè)人認(rèn)為,可以先把最中間的數(shù)填到九宮格的最中間位置;再按上面的規(guī)則逐個(gè)填寫(xiě),而且填的時(shí)候還可以把頭尾對(duì)應(yīng)的數(shù)填到對(duì)應(yīng)的格子中。 (第n個(gè)值跟倒數(shù)第n個(gè)值對(duì)應(yīng),格局上以最中間格為軸心對(duì)應(yīng))這樣就可以同時(shí)填兩個(gè)數(shù),效率比之前更高;其正確性有待數(shù)學(xué)論證 (但多次實(shí)驗(yàn)之后都沒(méi)發(fā)現(xiàn)有錯(cuò))。九宮格的1至少還可以填在另外的三個(gè)位置,只是接下來(lái)的填寫(xiě)順序需要相應(yīng)改變;再根據(jù)九宮格的對(duì)稱性,至少可以有 8種不同的填寫(xiě)方式classNinePalace{publicstaticvoidmain(String[]args){//定義N為九宮格的行列數(shù),需要輸入Scannern=newScanner(System.in);intN;〃判斷格局是否奇數(shù) (可判斷出偶數(shù)、負(fù)數(shù)及小數(shù))歡迎閱讀doubled;while(true){d=n.nextDouble();N=(int)d;if((d-N)>1.0E-4||N%2==0||N<0)elsebreak;}//老師的九宮格填寫(xiě)方法int[][]result=newint[N][N]; 〃定義保存九宮格的數(shù)組introw=0;//行初始位置intcol=N/2;//列初始位置,因?yàn)榱杏?開(kāi)始,故N/2是中間位置for(inti=1; i<=N*N;i++){result[row][col]=i;row--;col++;if(row<0&&col>=N){col--;row+=2;}// 行列都越界elseif(row<0){row=N-1;} //行越界elseif(col>=N){col=0;} //列越界elseif(result[row][col]!=0){col--;row+=2;} 〃有沖突}//打印出九宮格for(inti=0;i<N;i++){}〃我個(gè)人的填格方式int[][]result2=newint[N][N]; 〃為免沖突,重新new—個(gè)數(shù)組result2[N/2][N/2]=(N*N+1)/2; //先把中間值賦予中間位置row=0; 〃定義行及列的初始賦值位置。之前賦值的 for對(duì)兩個(gè)值有影響,故需重新定位col=N/2;for(inti=1;i<=N*N/2;i++){result2[row][col]=i;〃下面這句是把跟i對(duì)應(yīng)的值放到格局對(duì)應(yīng)的位置上result2[N-row-1][N-col-1]=N*N+1-i;row--;col++;if(row<0){row=N-1;} 〃行越界elseif(col>=N){col=0;} //列越界elseif(result2[row][col]!=0){col--;row+=2;} //有沖突〃這方法不可能出現(xiàn)行列兩邊都越界的情況,詳情需要數(shù)學(xué)論證}〃再次打印出九宮格,以對(duì)比驗(yàn)證for(inti=0;i<N;i++){}}}求一個(gè)3*3矩陣對(duì)角線元素之和打印楊輝三角約梭芬殺人法歡迎閱讀把犯人圍成一圈,每次從固定位置開(kāi)始算起,殺掉第 7個(gè)人,直到剩下最后一個(gè)。11_2、用數(shù)組實(shí)現(xiàn)約瑟夫出圈問(wèn)題。n個(gè)人排成一圈,從第一個(gè)人開(kāi)始報(bào)數(shù),從1開(kāi)始報(bào),報(bào)到m的人出圈,剩下的人繼續(xù)開(kāi)始從1報(bào)數(shù),直到所有的人都出圈為止。對(duì)于給定的n,m,求出所有人的出圈順序。判斷隨機(jī)整數(shù)是否是素?cái)?shù)產(chǎn)生100個(gè)0-999之間的隨機(jī)整數(shù),然后判斷這 100個(gè)隨機(jī)整數(shù)哪些是素?cái)?shù),哪些不是?publicclassPrimeTest{publicstaticvoidmain(Stringargs[]){for(inti=0;i<100;i++){intnum=(int)(Math.random()*1000);PrimeTestt=newPrimeTest();if(t.isPrime(num)){}else{}}}publicbooleanisPrime(intnum){for(inti=2;i<=num/2;i++){if(num%i==0){returnfalse;}}returntrue;}}冒泡排序法://按從大到小的排序inttmp=a[0];for(inti=0;i<a.length;i++){for(intj=0;j<a.length-i-1;j++){if(a[j]<a[j+1]){tmp=a[j];a[j]=a[j+1];a[j+1]=tmp;}}}day06練習(xí)某公司的雇員分為以下若干類:Employee:這是所有員工總的父類,屬性:?jiǎn)T工的姓名和生日月份。方法:getSalary(intmonth)根據(jù)參數(shù)月份來(lái)確定工資,如果該月員工過(guò)生日,則公司會(huì)額外獎(jiǎng)勵(lì)100元。SalariedEmployee:Employee的子類,拿固定工資的員工。屬性:月薪HourlyEmployee:Employee的子類,按小時(shí)拿工資的員工,每月工作超出 160小時(shí)的部分按照1.5倍工資發(fā)放屬性:每小時(shí)的工資、每月工作的小時(shí)數(shù)SalesEmployeeEmployee的子類,銷售人員,工資由月銷售額和提成率決定歡迎閱讀屬性:月銷售額、提成率BasePlusSalesEmployeeSalesEmployee的子類,有固定底薪的銷售人員,工資由底薪加上銷售提成部分 屬性:底薪。?publicclassTestEmployee{publicstaticvoidmain(String[]args){Employee]]es=newEmployee[5];es[0]=newEmployee(""趙君",2);es[1]=newSalariedEmployee(宋婕",1,8000);es[2]=newHourlyEmployee(”王超",5,10,300);es[3]=newSalesEmployee(秋娥",2,200000,0.05);es[4]=newBaseSalarySalesEmployee郭鐙鴻",1,1000000,0.1,10000);intmonth=2;//本月為2月for(inti=0;i<es.length;i++){e()+":"+es[i].getSalary(month));}}}classEmployee{privateStringname;privateintbirth;publicStringgetName(){returnname;}publicEmployee(Stringname,intbirth){this.name=name;this.birth=birth;}publicdoublegetSalary(intmonth){if(month==birth){return100;}return0;}}classSalariedEmployeeextendsEmployee{privatedoublesalary;publicSalariedEmployee(Stringname,intbirth,doublesalary){super(name,birth);this.salary=salary;}publicdoublegetSalary(intmonth){returnsalary+super.getSalary(month);}}classHourlyEmployeeextendsEmployee{privatedoublehourSalary;privateinthour;歡迎閱讀publicHourlyEmployee(Stringname,intbirth,doublehourSalary,inthour){super(name,birth);this.hourSalary=hourSalary;this.hour=hour;}publicdoublegetSalary(intmonth){if(hour<=160){returnhourSalary*hou葉super.getSalary(month);}else{return160*hourSalary+(hour-160)*hourSalary*1.5+super.getSalary(month);}}}classSalesEmployeeextendsEmployee{privatedoublesales;privatedoublepre;publicSalesEmployee(Stringname,intbirth,doublesales,doublepre){super(name,birth);this.sales=sales;this.pre=pre;}publicdoublegetSalary(intmonth){returnsales*pre+super.getSalary(month);}}classBaseSalarySalesEmployeeextendsSalesEmployee{privatedoublebaseSalary;publicBaseSalarySalesEmployee(Stringname,intbirth,doublesales,doublepre,doublebaseSalary){super(name,birth,sales,pre);this.baseSalary=baseSalary;}publicdoublegetSalary(intmonth){returnbaseSalary+super.getSalary(month);}}/***在原有的雇員練習(xí)上修改代碼*公司會(huì)給SalaryEmployee每月另外發(fā)放2000元加班費(fèi),給BasePlusSalesEmployee發(fā)放1000元加班費(fèi)*改寫(xiě)原有代碼,加入以上的邏輯*并寫(xiě)一個(gè)方法,打印出本月公司總共發(fā)放了多少加班費(fèi)@authorAdministrator*/publicclassEmployeeTest{/**@paramargs歡迎閱讀*/publicstaticvoidmain(String[]args){Employeee[]=newEmployee[4];e[0]=newSalariedEmployee("魏威”,10,5000);e[1]=newHourlyEmployee(”段利峰",8,80,242);e[2]=newSalesEmployee("林林龍",11,300000,0.1);e[3]=newBasedPlusSalesEmployee(華溪",1,100000,0.15,1500);for(inti=0;i<e.length;i++){}//統(tǒng)計(jì)加班費(fèi)intresult=0;// for(inti=0;i<e.length;i++){// if(e[i] instanceofSalariedEmployee){// SalariedEmployees=(SalariedEmployee)e[i];// result+=s.getAddtionalSalary();// }// if(e[i] instanceofBasedPlusSalesEmployee){// BasedPlusSalesEmployeeb=(BasedPlusSalesEmployee)e[i];// result+=b.getAddtionalSalary();// }//}for(inti=0;i<e.length;i++){result+=e[i].getAddtionalSalary();}}}interfaceAddtionalSalary{intgetAddtionalSalary();}classEmployeeimplementsAddtionalSalary{privateStringname;//員工姓名privateintbirth;//員工生日月份publicEmployee(Stringname,intbirth){this.name=name;this.birth=birth;}publicintgetSalary(intmonth){intresult=0;if(month==birth)result=100;returnresult;}publicStringgetName(){returnname;}publicintgetAddtionalSalary(){return0;歡迎閱讀}}classSalariedEmployeeextendsEmployee{privateintsalaryPerMonth;publicSalariedEmployee(Stringname,intbirth,intsalaryPerMonth){super(name,birth);this.salaryPerMonth=salaryPerMonth;}publicintgetSalary(intmonth){returnthis.salaryPerMonth+super.getSalary(month)+this.getAddtionalSalary();}publicintgetAddtionalSalary(){return2000;}}classHourlyEmployeeextendsEmployee{privateintsalaryPerHour;privateinthoursPerMonth;publicHourlyEmployee(Stringname,intbirth,intsalaryPerHour,inthoursPerMonth){super(name,birth);this.salaryPerHour=salaryPerHour;this.hoursPerMonth=hoursPerMonth;}publicintgetSalary(intmonth){intresult=0;if(this.hoursPerMonth<=160){result=hoursPerMonth*salaryPerHour;}else{result=160*salaryPerHour+(int)((hoursPerMonth-160)*1.5*salaryPerHour);}returnresult+super.getSalary(month);}}classSalesEmployeeextendsEmployee{privateintsales;privatedoublerate;publicSalesEmployee(Stringname,intbirth,intsales,doublerate){super(name,birth);this.sales=sales;this.rate=rate;}publicintgetSalary(intmonth){return(int)(sales*rate)+super.getSalary(month);歡迎閱讀classBasedPlusSalesEmployeeextendsSalesEmployee{privateintbasedSalary;publicBasedPlusSalesEmployee(Stringname,intbirth,intsales,doublerate,intbasedSalary){super(name,birth,sales,rate);this.basedSalary=basedSalary;}publicintgetSalary(intmonth){returnthis.basedSalary+super.getSalary(month)+this.getAddtionalSalary();}publicintgetAddtionalSalary(){return1000;}}經(jīng)典算法:某學(xué)校為學(xué)生分配宿舍,每6個(gè)人一間房(不考慮性別差異),問(wèn)需要多少房?答案:(x+5)/6注意理解int類型數(shù)值。讓數(shù)值在0?9之間循環(huán)。publicclasstest{publicstaticvoidmain(String[]args){inti=0;while(true){i=(i+1)%10;}}}作業(yè):寫(xiě)一個(gè)數(shù)組類(放對(duì)象):功能包括:添加(添加不限制多少項(xiàng))、修改、插入、刪除、查詢classMyArray{privateObject[]os=newObject[10];publicvoidadd(Objecto);publicvoidset(intindex,Objecto);publicvoidinsert(intindex,Objecto);publicvoidremove(intindex);publicvoidremove(Objecto);publicObjectget(intindex);}publicclassTestMyArray{publicstaticvoidmain(String[]args){MyArrayma=newMyArray();ma.add("aaa");ma.add("bbb");ma.add("ccc");Objecto=ma.get(1);Iteratorit=ma.iterator();歡迎閱讀while(it.hasNext()){Objecto1=it.next();}}}作業(yè)10-08ArrayList隨機(jī)產(chǎn)生20個(gè)整數(shù)(10以內(nèi)的),放入一個(gè)ArrayList中,用迭代器遍歷這個(gè)ArrayList并刪除其中為5的數(shù)再產(chǎn)生3個(gè)整數(shù),插入到位置4處把所有值為1的數(shù)都變成10classArrayList{privateObject[]os=newObject[20];}publicclassTestArray{publicstaticvoidmain(String[]args){ArrayLista=newArrayList();ma.add("aaa");ma.add("bbb");ma.add("ccc");Objecto=ma.get(1);Iteratorit=ma.iterator();while(it.hasNext()){Objecto1=it.next();}}}產(chǎn)生3000個(gè)10以內(nèi)的數(shù),放入hashSet遍歷它,打印每一個(gè)值publicclassTestHashSet{publicstaticvoidmain(String[]args){Randomr=newRandom();HashSeths1=newHashSet();for(inti=0;i<3000;i++){hs1.add(r.nextInt(10));}Iteratorit1=hs1.iterator();while(it1.hasNext()){}}}//由于HashSet不能重復(fù),所以只有10個(gè)數(shù)在里面,按哈希排序2498613750/**測(cè)試TreeSet的比較器,*在有自己的比較器的情況下,如何實(shí)現(xiàn) Comparable接口*/importjava.util.*;歡迎閱讀classTeacher{intid;Stringname;intage;publicTeacher(){}publicTeacher(intid,Stringname,intage){this.id=id;this.name=name;this.age=age;}publicintgetld(){ returnid; }publicvoidsetId(intid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){ this.name=name;}publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}publicintTeacherComparator(Objecto){Teachert1=(Teacher)o;if(t1.getld()>id){return1;}elseif(t1.getId()<id){return-1;}return0;}}classTreeSet{}classTest{publicstaticvoidmain(String[]args){Strings1=newString("aaa");Strings2=newString("bbb");Strings3=newString("aaa");HashSeths=newHashSet();hs.add(s1);hs.add(s2);hs.add(s3);Iteratorit=hs.iterator();while(it.hasNext()){}}}1.在Map中,以name作Key,以Student類作Velue,寫(xiě)一個(gè)HashMapimportjava.util.*;classStudent{intid;Stringname;intage;publicStudent(){}publicStudent(intid,Stringname,intage){
歡迎閱讀this.id=id;this.name=name;this.age=age;}publicintgetld(){returnid;}publicvoidsetId(intid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}}classTestHashMap{publicstaticvoidmain(String[]args){HashMaphm=newHashMap();Students1=newStudent(1,"jacky",19);hm.put("jacky",s1);hm.put("tom",newStudent(2,"tom",21));hm.put("kitty",newStudent(3,"kitty",17));Iteratorit=hm.keySet().iterator();while(it.hasNext()){Objectkey=it.next();Studentvalue=(Student)hm.get(key);}//比較KeySet()和entrySet()兩種迭代方式for(Iteratori1=hm.entrySet().iterator();i1.hasNext();){Map.Entryme=(Map.Entry)i1.next();Students=(Student)me.getValue();}嚴(yán)b[}}day13homework1./**********************************************************************************自己寫(xiě)一個(gè)棧: (先進(jìn)后出)建議底層用LinkedList實(shí)現(xiàn)方法:booleanempty()測(cè)試堆棧是否為空。Epeek() 查看棧頂對(duì)象而不移除它。Epop() 移除棧頂對(duì)象并作為此函數(shù)的值返回該對(duì)象。Epush(Eitem)把項(xiàng)壓入棧頂。intsearch(Objecto) 返回對(duì)象在棧中的位置,以 1為基數(shù)。*************************************************************************************〃不能用繼承,因?yàn)樗茐姆庋b。只需調(diào)用即可classMyStack<E>{privateLinkedList<E>list=newLinkedList<E>();publicbooleanempty(){returnlist.isEmpty();}publicEpeek() {returnlist.peek();}
歡迎閱讀publicEpop() {returnlist.poll();}publicvoidpush(Eo){list.addFirst(o);}〃int indexOf(Objecto)返回此列表中首次出現(xiàn)的指定元素的索引,如果此列表中不包含該元素,則返回-1。publicintsearch(Objecto){returnlist.indexOf(o);}}2./************************************************************************************定義以下類,完成后面的問(wèn)題,并驗(yàn)證。Exam類考試類屬性:若干學(xué)生一張考卷提示:學(xué)生采用HashSet存放Paper類考卷類屬性:若干試題提示:試題采用HashMap存放,key為String,表示題號(hào),value為試題對(duì)象Student類 學(xué)生類屬性:姓名一張答卷一張考卷考試成績(jī)Question類 試題類屬性:題號(hào)題目描述 若干選項(xiàng) 正確答案提示:若干選項(xiàng)用ArrayListAnswerSheet類 答卷類屬性:每道題的答案提示:答卷中每道題的答案用HashMap存放,key為String,表示題號(hào),value為學(xué)生的答案問(wèn)題:為Exam類添加一個(gè)方法,用來(lái)為所有學(xué)生判卷,并打印成績(jī)排名(名次、姓名、成績(jī))*************************************************************************************3./************************************************************************************項(xiàng)目:商品管理系統(tǒng)功能:增刪改查(可按各種屬性查)商品屬性:名稱、價(jià)格(兩位小數(shù))、種類*************************************************************************************day17圖形界面day17圖形界面1.計(jì)算器/*****************仮題^畫(huà)出計(jì)算器的界*****************************界面如下:1470*******************/importjava.awt.*;importjavax.swing.*;classCalculator{
歡迎閱讀publicstaticvoidmain(String[]args){JTextFieldtext=newJTextField();JFramef=newJFrame(計(jì)算器");Fontfont=newFont("宋體",Font.BOLD,25);//"宋體"想寫(xiě)成默認(rèn),則寫(xiě)“null”text.setFont(font);//定義字體text.setHorizontalAlignment(JTextField.RIGHT);//令text的文字從右邊起text.setEditable(false);//設(shè)置文本不可修改,默認(rèn)可修改(true)f.add(text,BorderLayout.NORTH);//Frame和Dialog的默認(rèn)布局管理器是BorderLayoutButtonActionListenerlistener=newButtonActionListener(text);//事件反應(yīng)在text中JPanelbuttonPanel=newJPanel();設(shè)法把計(jì)算器鍵盤(pán)放到這個(gè)Jpanel按鈕上Stringop="123
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智能交通系統(tǒng)建設(shè)合同4篇
- 2025年度產(chǎn)品上樣研發(fā)創(chuàng)新合作框架協(xié)議4篇
- 二零二四年專業(yè)調(diào)解離婚財(cái)產(chǎn)分配協(xié)議3篇
- 2025年度廠房租賃合同補(bǔ)充協(xié)議(含租賃物保險(xiǎn)及理賠)4篇
- 2025年度柴油產(chǎn)品售后服務(wù)協(xié)議3篇
- 女性職工知識(shí)培訓(xùn)課件
- 2024藝術(shù)品經(jīng)營(yíng)公司與藝術(shù)家前期藝術(shù)品交易合同
- 不動(dòng)產(chǎn)企業(yè)股權(quán)轉(zhuǎn)讓標(biāo)準(zhǔn)協(xié)議版B版
- 專業(yè)辦公設(shè)備配送及維護(hù)服務(wù)協(xié)議版A版
- 2024藥品、醫(yī)療器械質(zhì)量保證協(xié)議書(shū)
- 醫(yī)養(yǎng)康養(yǎng)園項(xiàng)目商業(yè)計(jì)劃書(shū)
- 《穿越迷宮》課件
- 《C語(yǔ)言從入門(mén)到精通》培訓(xùn)教程課件
- 2023年中國(guó)半導(dǎo)體行業(yè)薪酬及股權(quán)激勵(lì)白皮書(shū)
- 2024年Minitab全面培訓(xùn)教程
- 社區(qū)電動(dòng)車棚新(擴(kuò))建及修建充電車棚施工方案(純方案-)
- 項(xiàng)目推進(jìn)與成果交付情況總結(jié)與評(píng)估
- 鐵路項(xiàng)目征地拆遷工作體會(huì)課件
- 醫(yī)院死亡報(bào)告年終分析報(bào)告
- 建設(shè)用地報(bào)批服務(wù)投標(biāo)方案(技術(shù)方案)
- 工會(huì)工作人年度考核個(gè)人總結(jié)
評(píng)論
0/150
提交評(píng)論