WEEK3作业
来源:互联网 发布:android蓝牙接收数据 编辑:程序博客网 时间:2024/05/22 16:38
1. 定义一个工具类
其中提供了对于整形数组和double类型数组的一些工具方法。
方法分别有:
1.求数组值的和.
2.求数组中的最大值
3.对数组进行升序排序.
4.对数组进行倒序排序(也就是反转数组)
工具类要求:
a.私有化构造方法
b.不希望被继承
public class Testa {
public static void main (String[]args){
int arr[]=new int[]{2,17,80,16,24,39};
double[]arry=new double[]{1.2,8.6,13.7,9.8,6.7};
//定义整形和double数组
Array.intShowArray(arr);
Array.doubleShowArray(arry);
Array.intSum(arr);
Array.doubleSum(arry);
Array.intMax(arr);
Array.doubleMax(arry);
Array.intSortAscending(arr);
Array.doubleSortAscending(arry);
Array.intSortDown(arr);
Array.doubleSortDown(arry);
}
}
//定义一个不能被继承的工具类
final class Array{
//私有化构造方法
private Array(){}
//求数组值的和的方法
static void intSum(int[] arr){
int sum=0;
for(int i=0; i<arr.length; i++){
sum+=arr[i];
}
System.out.println("整形数组的和是:"+sum);
}
static void doubleSum(double[] arr){
double sum=0.0;
for(int i=0; i<arr.length; i++){
sum+=arr[i];
}
System.out.println("浮点型数组的和是:"+sum);
}
//求数组最大值的方法
static void intMax(int[] arr){
int max=arr[0];
for(int i=0; i<arr.length; i++){
if(max<arr[i]){
max=arr[i];
}
}
System.out.println("整形数组的最大值:"+max);
}
static void doubleMax(double[] arr){
double max=arr[0];
for(int i=0; i<arr.length; i++){
if(max<arr[i]){
max=arr[i];
}
}
System.out.println("浮点型数组的最大值:"+max);
}
//数组升序排序的方法
static void intSortAscending(int[] arr){
for(int i=0; i<arr.length; i++){
for(int j=i; j<arr.length-1;j++){
if(arr[i]>arr[j+1]){
int temp;
temp=arr[i];
arr[i]=arr[j+1];
arr[j+1]=temp;
}
}
}
System.out.print("整形数组的升序排序: [");
for(int i=0; i<arr.length; i++){
if(i==arr.length-1){
System.out.print(arr[i]+"]");
}else{
System.out.print(arr[i]+" ");
}
}
System.out.println();
}
static void doubleSortAscending(double[] arr){
for(int i=0; i<arr.length; i++){
for(int j=i; j<arr.length-1;j++){
if(arr[i]>arr[j+1]){
double temp;
temp=arr[i];
arr[i]=arr[j+1];
arr[j+1]=temp;
}
}
}
System.out.print("浮点型数组的升序排序: [");
for(int i=0; i<arr.length; i++){
if(i==arr.length-1){
System.out.print(arr[i]+"]");
}else{
System.out.print(arr[i]+" ");
}
}
System.out.println();
}
//数组倒叙排序的方法
static void intSortDown(int[] arr){
for(int i=0; i<arr.length; i++){
for(int j=i; j<arr.length-1;j++){
if(arr[i]<arr[j+1]){
int temp;
temp=arr[i];
arr[i]=arr[j+1];
arr[j+1]=temp;
}
}
}
System.out.print("整形数组的降序排序: [");
for(int i=0; i<arr.length; i++){
if(i==arr.length-1){
System.out.print(arr[i]+"]");
}else{
System.out.print(arr[i]+" ");
}
}
System.out.println();
}
static void doubleSortDown(double[] arr){
for(int i=0; i<arr.length; i++){
for(int j=i; j<arr.length-1;j++){
if(arr[i]<arr[j+1]){
double temp;
temp=arr[i];
arr[i]=arr[j+1];
arr[j+1]=temp;
}
}
}
System.out.print("浮点型数组的降序排序: [");
for(int i=0; i<arr.length; i++){
if(i==arr.length-1){
System.out.print(arr[i]+"]");
}else{
System.out.print(arr[i]+" ");
}
}
System.out.println();
}
//打印数组的方法
static void intShowArray(int[] arr){
System.out.print("整型数组为: [");
for(int i=0; i<arr.length; i++){
if(i==arr.length-1){
System.out.print(arr[i]+"]");
}else{
System.out.print(arr[i]+" ");
}
}
System.out.println();
}
static void doubleShowArray(double[] arr){
System.out.print("浮点型数组为: [");
for(int i=0; i<arr.length; i++){
if(i==arr.length-1){
System.out.print(arr[i]+"]");
}else{
System.out.print(arr[i]+" ");
}
}
System.out.println();
}
2. a.定义一个英雄类 Hero
属性:(全部私有,提供公共方法让外部访问)
年龄,血量 ,攻击力,防御力
方法:
释放技能,加血.
必须至少包含一个构造方法,且该构造方法可以初始化所有四个成员变量
b.定义一个类BatMan继承Hero类
方法:
飞行(方法中输出一行打印"飞行")
c.定义一个SuperBatMan类继承BatMan类
方法:
重写飞行方法(方法中输出一行打印"超级飞行")
最终分别创建BatMan对象和SuperBatMan对象,并调用飞行方法.
package javase;
public class Test2 {
public static void main(String[] args) {
BatMan batman =new BatMan();
batman.fly();
System.out.println("释放技能,加血");
SuperBatMan superbatman =new SuperBatMan();
superbatman.fly();
}
}
class Hero{
private int age;
private int bloodNum;
private int ad;
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 ad){
this.ad= ad;
}
int getad(){
return ad;
}
void setDefense(int defense){
this.defense= defense;
}
int getDefense(){
return defense;
}
}
class BatManextends Hero{
void fly(){
System.out.println("飞行");
}
}
class SuperBatManextends BatMan{
void fly(){
System.out.println("超级飞行");
}
}
3. 实现一个猜数的小游戏.
随机产生一个数(a)。
Scanner 的方式来输入一个数字,并提供反馈,告诉用户该输入的值比a大还是比a小,直到最终用户猜中,显示结果.
package javase;
import java.util.Random;
import java.util.Scanner;
public class Test3 {
public static void main(String[] args) {
Random random =new Random();
int a = random.nextInt(1);
Scanner input =new Scanner(System.in);
boolean flag = true;
while(flag){
System.out.println("请输入一个所猜的数字:");
int b = input.nextInt();
if(b>a){
System.out.println("你猜的数比a大");
}else if(b<a){
System.out.println("你猜的数比a小");
}else{
System.out.println("恭喜你猜对了!");
flag =false;
}
}
}
}
- Week3 作业
- WEEK3作业
- week3作业
- c++ 程序设计 week3 作业
- 【算法设计作业】week3
- Logistic Regression WEEK3编程作业
- 作业Week3 "Stopwatch: The Game"
- Stanford 机器学习 Week3 作业 Logistic Regression
- 计算机科学和编程导论-week3-作业
- [机器学习]week3编程作业:Logistic Regression
- MOOC面向对象编程week3作业
- Coursera Machine Learning 作业代码 week3
- Week3
- week3
- week3
- week3
- week3
- Coursera机器学习 week3 逻辑回归 编程作业代码
- springmvc上传文件的三种方式
- SQL语言学习
- 两个页面定时相互跳转
- Linux/Centos下安装部署phantomjs 及使用
- Android开发常用工具类AndroidUtilCode
- WEEK3作业
- jquery,js-按钮控制音乐播放
- angular中的$scope类
- 改善深层神经网络:超参数调试、正则化以及优化——优化算法(2-2)
- 实验五.用callback增强链表模块来实现命令行菜单小程序V2.8
- 应聘者的职业道德故事分享
- 卸载测试的测试点
- tomcat 闪退问题
- 我的Linux学习之路(四、安装jdk和tomcat)