day6day7作业
来源:互联网 发布:指甲刀品牌排行榜知乎 编辑:程序博客网 时间:2024/06/06 01:15
其中提供了对于整形数组和double类型数组的一些工具方法。
方法分别有:
1.求数组值的和.
2.求数组中的最大值
3.对数组进行升序排序.
4.对数组进行倒序排序(也就是反转数组)
工具类要求:
a.私有化构造方法
b.不希望被继承
import java.util.Arrays;
public class Tool {
int [] arr;
double [] arr1;
private Tool(int arr[]){
this.arr=arr;
}
private Tool(double arr1[]){
this.arr1=arr1;
}
void sumArr(){
int sum=0;
for(int i=0;i<arr.length;i++)
sum+=arr[i];
System.out.println("数组和为:"+sum);;
}
void sumArr1(){
double sum=0;
for(int i=0;i<arr1.length;i++)
sum+=arr1[i];
System.out.println("数组和为:"+sum);
}
void maxNumArr(){
int max=arr[0];
for(int i=0;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]<arr[j]){
i=j;
max=arr[j];
}
}
}
System.out.println("数组中最大的值为;"+max);
}
void maxNumArr1(){
double max=arr1[0];
for(int i=0;i<arr1.length;i++){
for(int j=i+1;j<arr1.length;j++){
if(arr1[i]<arr1[j]){
i=j;
max=arr1[j];
}
}
}
System.out.println("数组中最大的值为;"+max);
}
void sortArr(){
Arrays.sort(arr);
}
void printSortArr(){
for(int i=0;i<arr.length;i++)
System.out.print(arr[i]+" ");
System.out.println();
}
void sortArr1(){
Arrays.sort(arr1);
}
void printSortArr1(){
for(int i=0;i<arr1.length;i++)
System.out.print(arr1[i]+" ");
System.out.println();
}
void printFlashbackArr(){
for(int i=arr.length-1;i>-1;i--)
System.out.print(arr[i]+" ");
System.out.println();
}
void printFlashbackArr1(){
for(int i=arr1.length-1;i>-1;i--)
System.out.print(arr1[i]+" ");
System.out.println();
}
public static void main(String[] args) {
int arr[]={1,4,7,2,5,8};
Tool tool=new Tool(arr);
tool.sumArr();
tool.maxNumArr();
tool.sortArr();
tool.printSortArr();
tool.printFlashbackArr();
double arr1[]={1.1,4.4,7.7,2.2,5.5,8.8};
Tool tool1=new Tool(arr1);
tool1.sumArr1();
tool1.maxNumArr1();
tool1.sortArr1();
tool1.printSortArr1();
tool1.printFlashbackArr1();
}
2. a.定义一个英雄类 Hero
属性:(全部私有,提供公共方法让外部访问)
年龄, 血量 ,攻击力,防御力
方法:
释放技能,加血.
必须至少包含一个构造方法,且该构造方法可以初始化所有四个成员变量
b.定义一个类BatMan继承Hero类
方法:
飞行(方法中输出一行打印"飞行")
c.定义一个SuperBatMan类继承 BatMan类
方法:
重写飞行方法(方法中输出一行打印"超级飞行")
最终分别创建BatMan对象和SuperBatMan对象,并调用飞行方法.
package task;
public class t2 {
public static void main(String[] args) {
Hero hero=new Hero(16,255,163,72);
hero.behavior(true);
BatMan cover=new BatMan(999,999,999,999);
cover.act();
SuperBatMan cover1=new SuperBatMan(9999,9999,9999,9999);
cover1.act();
}
}
//定义英雄类hero
class Hero{
private double hp;
private int age;
private double damage;
private double defens;
//构造方法初始化变量
Hero(double hp,int age,double damage,double defens){
this.hp=hp;
this.age=age;
this.damage=damage;
this.defens=defens;
}
//方法 释放技能加血
void behavior(boolean skill){
if(skill){
hp++;
}
}
}
//batman类继承hero
class BatMan extends Hero{
BatMan(double hp, int age, double damage, double defens) {
super(hp, age, damage, defens);
// TODO Auto-generated constructor stub
}
//方法
void act(){
System.out.println("飞行");
3. 实现一个猜数的小游戏.
随机产生一个数(a)。
Scanner 的方式来输入一个数字,并提供反馈,告诉用户该输入的值比a大还是比a小,直到最终用户猜中,显示结果.
package task;
import java.util.Scanner;
public class t3 {
public static void main(String[] args) {
int a = (int)(Math.random()*10)+1;
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数");
int b=sc.nextInt();
for(int i=0;i<a;i++){
if(b>a){
System.out.println("该数大于a");
}
else if(b<a){
System.out.println("该数小于a");
}System.out.println("请再次输入");
Scanner sc1=new Scanner(System.in);
b=sc.nextInt();
}
if (a==b) {
System.out.println("这个数是"+a);
}
}
}
- day6day7作业
- 作业
- 作业
- 作业
- 作业
- 作业
- 作业
- 作业
- 作业
- 作业
- 作业
- 作业~~~~~~~~~~~~~
- 作业
- 作业
- 作业
- 作业
- 作业
- 作业
- Android 之路1---安装配置环境Mac版
- 代码:小波包分解与重构、小波包能量特征提取
- 凸包 hdu 1348
- 求最大子列和问题(浙江大学数据结构)
- 这里有一款超强工具:`团队编程`,`结对编程`,`远程协助`,用什么工具好?
- day6day7作业
- 图解归并排序
- 获取两个list的交集和两个list中双方分别不包含的集合
- 腾讯实习小结
- Linux基础——Vim编辑器的使用
- 杭电ACM题目类型整理
- Socket安全
- 第六章:通过mvc模型设计一个简单的留言系统
- spring cloud