Java阶段性测试--第二三大题参考代码
来源:互联网 发布:域名在线评估 编辑:程序博客网 时间:2024/05/20 22:07
第二大题:
1、打印出所有的 “水仙花数 “,所谓 “水仙花数 “是指一个三位数,其各位数字立方和等于它本身
package Test1;//1、打印出所有的 "水仙花数 ",所谓 "水仙花数 “是指一个三位数,其各位数字立方和等(3)public class Test1 { public static void main(String[] args) { System.out.println("水仙花数如下:"); for(int i=100;i<=999;i++){ //1---个位数 int a=i%10; //10--十位数 int b=i/10%10; //100--百位数 int c=i/100; if((Math.pow(a, 3)+Math.pow(b, 3)+Math.pow(c, 3))==i){ System.out.print(i+","); } } }}
运行结果:
2、利用封装的思想,编写程序:
创建一个叫做Person的实体类:
属性:姓名、年龄、性别
行为:说话、计算加法、改名
创建一个测试类P_Test,在测试类中创建Person类的对象:名叫“张三”,性别“男”,年龄23岁,让该对象调用成员方法:说出“Hello”;计算23+78的值;将名字改为“Mike”。
代码:
Person类
package Test1;/** * 创建一个叫做Person的实体类: 属性:姓名、年龄、性别 行为:说话、计算加法、改名 * @author Administrator * */public class Person { private String name; private int age; private String sex; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } @Override public String toString() { return "Person [name=" + name + ", age=" + age + ", sex=" + sex + "]"; } public Person(String name, int age, String sex) { super(); this.name = name; this.age = age; this.sex = sex; } public Person() { super(); } //行为:说话、计算加法、改名 public void say(){ System.out.println("Hello!"); } public int add(int a,int b){ return a+b; }}
测试类:
package Test1;public class P_Test2 { public static void main(String[] args) { Person person=new Person("张三", 23, "男"); //say hello System.out.println("say方法运行结果:"); person.say(); //23+78 int c=person.add(23, 78); System.out.println("求和结果:"+c); //change name person.setName("Mike"); System.out.println("改后名字:"+person.getName()); }}
运行结果:
第三题大题
【1】请随机生成10个从5到150之间的数字(大于等于5小于等于150),将生成的随机数存储在整型数组中(不考虑重复)
代码:
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,获取随机数,并进行强转 arr[i]=(int)(Math.random()*146+5); } System.out.println("随机数组如下:"); System.out.println(Arrays.toString(arr)); }}
运行结果:
【2】使用冒泡排序对数组中的元素进行降序排列
冒泡排序逻辑:相邻两数进行比较,若前一个元素大,则交换位置,最后实现末尾数时最大的。
代码:
package Test2;import java.util.Arrays;//使用冒泡排序对数组中的元素进行降序排列public class Test2 { public static void main(String[] args) { int[] arr={1,3,8,9,10,5,5,3}; System.out.println("未排序时结果:"); 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("排序后结果如下:"); System.out.println(Arrays.toString(arr)); }}
运行结果如下:
【3】有如下一个数组{11,22,1,33,1,1,44,0,66,1,77,1,1,88}
要求将其中为1的元素值给去掉,通过合适的代码得到如下的新数组
{11,22,33,44,0,66,77,88}(数组长度等于数据长度)
代码:
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}; //统计非1的个数 int count=0; for (int i : arr) { if(i!=1){ count++; } } //newArr int index=0;//存新数组的下标 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后的数组遍历如下:"); System.out.println(Arrays.toString(newArr)); }}
运行结果:
1 0
- Java阶段性测试--第二三大题参考代码
- Java阶段性测试--第四五六大题参考代码
- java代码参考规范
- 翰子昂阶段性测试_S1阶段 ——JAVA 方向理论测试试题A卷
- java学习阶段性总结
- Java阶段性学习重点
- java阶段性总结
- Shader 透明度测试参考代码笔记
- pki java相关代码参考
- Java第一次作业参考代码
- [Java] 实验2参考代码
- [Java] 实验3参考代码
- Java第二次作业参考代码
- [Java] 实验4参考代码
- [Java] 实验5参考代码
- [Java] 实验6参考代码
- [Java] 实验7参考代码
- Java阶段性测试--知识点:数组,面向对象,集合、线程,IO流
- JQuery
- 应用思维活动脑电波进行两阶段生物认证的方法(概括)
- PHP实现二维数组按某列进行排序的方法
- Android Studio 中 build.gradle 中 dependencies 下的 comile 后面的内容的来源
- 轮播图 (Bootstrap)
- Java阶段性测试--第二三大题参考代码
- cocos2dx游戏开发学习笔记(三)
- http如何像tcp一样实时的收消息
- dom对象与jquery对象相互转换
- Java8新增日期
- 《Cracking the Coding Interview程序员面试金典》----最长合成字符串
- HttpClient 4.3超时设置
- 武汉工程大学致各位家长及同学们的一封公开信
- JAVA实现调整数组顺序使奇数位于偶数前面问题(《剑指 offer》)