Java阶段性测试--第二三大题参考代码
第二大題:
1、打印出所有的 “水仙花數(shù) “,所謂 “水仙花數(shù) “是指一個(gè)三位數(shù),其各位數(shù)字立方和等于它本身
package Test1; //1、打印出所有的 "水仙花數(shù) ",所謂 "水仙花數(shù) “是指一個(gè)三位數(shù),其各位數(shù)字立方和等(3) public class Test1 {public static void main(String[] args) {System.out.println("水仙花數(shù)如下:");for(int i=100;i<=999;i++){//1---個(gè)位數(shù)int a=i%10;//10--十位數(shù)int b=i/10%10;//100--百位數(shù)int c=i/100;if((Math.pow(a, 3)+Math.pow(b, 3)+Math.pow(c, 3))==i){System.out.print(i+",");}}} }運(yùn)行結(jié)果:
2、利用封裝的思想,編寫(xiě)程序:
創(chuàng)建一個(gè)叫做Person的實(shí)體類(lèi):
屬性:姓名、年齡、性別
行為:說(shuō)話、計(jì)算加法、改名
創(chuàng)建一個(gè)測(cè)試類(lèi)P_Test,在測(cè)試類(lèi)中創(chuàng)建Person類(lèi)的對(duì)象:名叫“張三”,性別“男”,年齡23歲,讓該對(duì)象調(diào)用成員方法:說(shuō)出“Hello”;計(jì)算23+78的值;將名字改為“Mike”。
代碼:
Person類(lèi)
測(cè)試類(lèi):
package Test1;public class P_Test2 {public static void main(String[] args) {Person person=new Person("張三", 23, "男");//say helloSystem.out.println("say方法運(yùn)行結(jié)果:");person.say();//23+78int c=person.add(23, 78);System.out.println("求和結(jié)果:"+c);//change nameperson.setName("Mike");System.out.println("改后名字:"+person.getName());} }運(yùn)行結(jié)果:
第三題大題
【1】請(qǐng)隨機(jī)生成10個(gè)從5到150之間的數(shù)字(大于等于5小于等于150),將生成的隨機(jī)數(shù)存儲(chǔ)在整型數(shù)組中(不考慮重復(fù))
代碼:
package Test2;import java.util.Arrays;public class Test1 {public static void main(String[] args) {int[] arr=new int[10];for(int i=0;i<arr.length;i++){//Math.random()*146+5,獲取隨機(jī)數(shù),并進(jìn)行強(qiáng)轉(zhuǎn)arr[i]=(int)(Math.random()*146+5);}System.out.println("隨機(jī)數(shù)組如下:");System.out.println(Arrays.toString(arr));} }運(yùn)行結(jié)果:
【2】使用冒泡排序?qū)?shù)組中的元素進(jìn)行降序排列
冒泡排序邏輯:相鄰兩數(shù)進(jìn)行比較,若前一個(gè)元素大,則交換位置,最后實(shí)現(xiàn)末尾數(shù)時(shí)最大的。
代碼:
package Test2;import java.util.Arrays;//使用冒泡排序?qū)?shù)組中的元素進(jìn)行降序排列 public class Test2 {public static void main(String[] args) {int[] arr={1,3,8,9,10,5,5,3};System.out.println("未排序時(shí)結(jié)果:");System.out.println(Arrays.toString(arr));//冒泡排序for(int i=0;i<arr.length;i++){for(int j=i+1;j<arr.length;j++){if(arr[i]<arr[j]){int temp=arr[i];arr[i]=arr[j];arr[j]=temp;}}}System.out.println("排序后結(jié)果如下:");System.out.println(Arrays.toString(arr));} }運(yùn)行結(jié)果如下:
【3】有如下一個(gè)數(shù)組{11,22,1,33,1,1,44,0,66,1,77,1,1,88}
要求將其中為1的元素值給去掉,通過(guò)合適的代碼得到如下的新數(shù)組
{11,22,33,44,0,66,77,88}(數(shù)組長(zhǎng)度等于數(shù)據(jù)長(zhǎng)度)
代碼:
package Test2;import java.util.Arrays;public class Test3 {public static void main(String[] args) {int[] arr={11,22,1,33,1,1,44,0,66,1,77,1,1,88};//統(tǒng)計(jì)非1的個(gè)數(shù)int count=0;for (int i : arr) {if(i!=1){count++;}}//newArrint index=0;//存新數(shù)組的下標(biāo)int[] newArr=new int[count];for(int j=0;j<arr.length;j++){if(arr[j]!=1){newArr[index]=arr[j];index++;}}System.out.println("剔除1后的數(shù)組遍歷如下:");System.out.println(Arrays.toString(newArr));} }運(yùn)行結(jié)果:
總結(jié)
以上是生活随笔為你收集整理的Java阶段性测试--第二三大题参考代码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java阶段性测试--知识点:数组,面向
- 下一篇: Java之反射代码演示说明