欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java homework3,

来源: javaer 分享于  点击 49885 次 点评:89

Java homework3,


1. 定义一个工具类
其中提供了对于整形数组和double类型数组的一些工具方法。
方法分别有:
1.求数组值的和.
2.求数组中的最大值
3.对数组进行升序排序.
4.对数组进行倒序排序(也就是反转数组)
工具类要求:
a.私有化构造方法
b.不希望被继承
import java.util.Arrays;
public class MathUtil {  
    //私有化构造方法  
    private MathUtil(){       
    }    
    //方法用static进行修饰
    static int getSum(int[] arr){  
        int sum = 0;  
        for(int i=0;i<arr.length;i++){  
            sum += arr[i];  
        }  
        return sum;  
    }    
    static double getSum(double [] arr){  
        double sum = 0;  
        for(int i=0;i<arr.length;i++){  
            sum += arr[i];  
        }  
        return sum;  
    }  
//对数组进行升序排序   
    static void sort(int arr[]){  
        Arrays.sort(arr);           
        System.out.print("数组升序排序的结果是:");  
            System.out.print(Arrays.toString(arr));            
        System.out.println("数组中最大的数"+"max: "+arr[arr.length-1]);
    }  
//反转排序
    static void reverseArray(int [] arr){  
        System.out.print("数组中原来的内容升序排列是: "+Arrays.toString(arr));       
        int temp;  
        int len =arr.length;  
        for(int i=0;i<len/2;i++){  
            temp = arr[i];  
            arr[i] = arr[len-1-i];  
            arr[len-1-i] = temp;  
        } 
        System.out.print("数组反转后内容:"+Arrays.toString(arr));  
    }   
    public static void main(String[] args){  
        new Action().getResult();  
    }  
}       
class Action{  
    void getResult(){  
        int [] arr = new int[]{7,14,3,9,6};  
        System.out.println("数组中的元素之和为:"+MathUtil.getSum(arr));   
        MathUtil.sort(arr);   
        MathUtil.reverseArray(arr);  
    }  
}  

2. a.定义一个英雄类  Hero
   属性:(全部私有,提供公共方法让外部访问)
        年龄, 血量 ,攻击力,防御力
   方法:
        释放技能,加血.
   必须至少包含一个构造方法,且该构造方法可以初始化所有四个成员变量   
   b.定义一个类BatMan继承Hero类 
   方法:
        飞行(方法中输出一行打印"飞行")
   c.定义一个SuperBatMan类继承 BatMan类
   方法:
        重写飞行方法(方法中输出一行打印"超级飞行")
        最终分别创建BatMan对象和SuperBatMan对象,并调用飞行方法.
class Hero{  
    private int age;  
    private int bloodNum;  
    private int atc;  
    private int defense;  
    void setAge(int age){  
        this.age = age;  
    }  
    int getAge(){  
        return age;  
    }  
      
    void setBloodNum(int bloodNum){  
        this.bloodNum= bloodNum;  
    }  
    int getBlood(){  
        return bloodNum;  
    }  
      
    void setAtc(int atc){  
        this.atc= atc;  
    }  
    int getAtc(){  
        return atc;  
    }   
    void setDefense(int defense){  
        this.defense= defense;  
    }  
    int getDefense(){  
        return defense;  
    }  
    void Skill(){  
        System.out.println("释放技能");  
    }  
    void AddBlood(){  
        System.out.println("加" + this.bloodNum+"血");  
    }  
}   
class BatMan extends Hero{  
    void fly(){  
        System.out.println("飞行");  
    }  
}  
  
class SuperBatMan extends BatMan{  
    //super();  
    void fly(){  
        System.out.println("超级飞行");  
    }  

class Homework{
public static void main(String[] args) {  
    BatMan batman = new BatMan();  
    batman.fly();   
    SuperBatMan superbatman = new SuperBatMan();  
    superbatman.fly();  
}

   
3. 实现一个猜数的小游戏.
随机产生一个数(a)。Scanner 的方式来输入一个数字,并提供反馈,告诉用户该输入的值比a大还是比a小,直到最终用户猜中,显示结果.
import java.util.Random;  
import java.util.Scanner;  
public class Homework1 {  
    public static void main(String[] args) {  
        Random random = new Random();  
        int a = random.nextInt(10);  
        Scanner input = new Scanner(System.in);  
        boolean flag = true;   
        while(flag){  
            System.out.println("请输入一个所猜的数字:");  
            int b = input.nextInt();  
            if(b>a){  
                System.out.println("你猜的数比随机生成的数大");  
            }else if(b<a){  
                System.out.println("你猜的数比随机生成的数小");  
            }else{  
                System.out.println("恭喜你猜对了!");  
                flag = false;  
            }  
        }     
    }  

 

相关文章

    暂无相关文章
相关栏目:

用户点评