定义一个数组工具【ArrayTool】封装其方法,ArrayDemo调用数组工具
ArrayTool

 package new_Object;
 //封装多个个功能
 class ArrayTool{
     //1==>获取最值
     public static int getMax(int []Arr){
         int maxIndex=Arr[0];
         for (int i = 1; i < Arr.length; i++) {
             if (Arr[i]>Arr[maxIndex]){
                 maxIndex=Arr[i];
             }
         }
             return Arr[maxIndex];
     }

     //2==>求角标
     public static int getIndex(int []Arr,int key){
         for (int i = 0; i < Arr.length; i++) {
             if (Arr[i]==key) {
                 return i;
             }
         }
         return -1;//没找到
     }

     //3,==>乘法表
     public static void printfCFB(){
         for (int i = 1; i <=9; i++) {
             for (int j = 1; j <=i; j++) {
                 System.out.print(i+"*"+j+"="+i*j+"\t");
             }
             System.out.println();
         }
     }
     //4,==>选择排序
     //打印数组
     public static  void Printf_Arr(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.println(Arr[i]+"");
     }
 }
     public static void select_Sort(int []Arr){
         for (int i = 0; i < Arr.length-1; i++) {
             for (int j = i+1; j < Arr.length; j++) {
             /*条件Arr[i]>Arr[j]==>Arr[i]<Arr[j] 则是从大到小排序*/
                 if (Arr[i]>Arr[j])
                     swap(Arr ,i,j);
             }
         }
     }
     //swap封装置换数值
     private static void swap(int []Arr,int a,int b){
         int temp=Arr[a];
         Arr[a]=Arr[b];
         Arr[b]=temp;
     }
     //5,==>遍历数组
     public static void show(int Arr[]){
         for (int i = 0; i < Arr.length; i++) {
             System.out.println("Arr["+i+"]="+Arr[i]);
         }
     }
 }

ArrayDemo调用ArrayTool

 package new_Object;
 //方法封装成对象
 public class ArrayToolDemo{
     public static void main(String[] args) {
         int []Arr={1,2,4,6,8};
         //static修饰的成员可直接被类名所调用==>类名.静态成员
         int max=ArrayTool.getMax(Arr);
         System.out.println("max="+max);
         System.out.println("--------------------");
         int getIndex=ArrayTool.getIndex(Arr,8);
         System.out.println("getIndex="+getIndex);
         System.out.println("--------------------");
         ArrayTool.printfCFB();
         System.out.println("--------------------");
         System.out.print("排序前:");
         ArrayTool.Printf_Arr(Arr);
         ArrayTool.select_Sort(Arr);//调用排序方法
         System.out.print("排序后:");
         ArrayTool.Printf_Arr(Arr);
         System.out.println("--------------------");
         ArrayTool.show(Arr);
     }
 }

==========================run===========================

max=8
--------------------
getIndex=4
--------------------
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
--------------------
排序前:1、2、4、6、8
排序后:1、2、4、6、8
--------------------
Arr[0]=1
Arr[1]=2
Arr[2]=4
Arr[3]=6
Arr[4]=8

由此例子更进一步理解封装

封装的应用【example_Array工具】的更多相关文章

  1. 【更新】【封装必备】封装辅助 - 清理&优化工具 For Win7(IT天空会员专版)

    https://www.itsk.com/thread-353560-1-4.html nqawen 发表于 2015-7-9 17:26:37   本帖最后由 Amz 于 2015-11-25 10 ...

  2. iOS开发拓展篇—封装音频文件播放工具类

    iOS开发拓展篇—封装音频文件播放工具类 一.简单说明 1.关于音乐播放的简单说明 (1)音乐播放用到一个叫做AVAudioPlayer的类 (2)AVAudioPlayer常用方法 加载音乐文件 - ...

  3. JBPM4入门——4.封装流程管理的工具类(JbpmUtil)

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  4. Redis进阶实践之九 独立封装的RedisClient客户端工具类(转载9)

    Redis进阶实践之九 独立封装的RedisClient客户端工具类 一.引言 今天开始有关Redis学习的第九篇文章了,以后肯定会大量系统使用Redis作为缓存介质,为了更好的更好的Redis,自己 ...

  5. 钉钉机器人SDK 封装预警消息发送工具

    1 群机器人     (1) 引言     钉钉聊天群内支持的群机器人, 类似QQ 群机器人, 可以发天气, 讲笑话那样;     钉钉群机器人支持自定义机器人, 允许开发者管理机器人做预警消息通知; ...

  6. jdbc 11: 封装自己的jdbc工具类

    jdbc连接mysql,封装自己的jdbc工具类 package com.examples.jdbc.utils; import java.sql.*; import java.util.Resour ...

  7. java模板模式项目中使用--封装一个http请求工具类

    需要调用http接口的代码继承FundHttpTemplate类,重写getParamData方法,在getParamDate里写调用逻辑. 模板: package com.crb.ocms.fund ...

  8. Java 基于mail.jar 和 activation.jar 封装的邮件发送工具类

    准备工作 发送邮件需要获得协议和支持! 开启服务 POP3/SMTP 服务 如何开启 POP3/SMTP 服务:https://www.cnblogs.com/pojo/p/14276637.html ...

  9. PHP之封装一些常用的工具类函数

    分享一些PHP中常用的工具里函数: <?php /** * Created by PhpStorm. * User: Steven * Date: 2016/8/12 * Time: 14:21 ...

随机推荐

  1. Jquery_基础(三) ajax与json

    什么是ajax? AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. ...

  2. 城乡联谊胡策会糊厕R3

    因为时间关系这把没设计题面,而且居然还出了锅……T_T 信 原题是leetcode WeeklyContest52 的T1(懒得去找url了 随便搞,但是无解输-1 数字统计 原题PE603 记前n个 ...

  3. c++(链表逆转)

    链表逆转是面试环境中经常遇到的一道题目,也是我们在实际开发中可能会遇到的开发需求.和线性逆转不一样,单向链表的节点需要一个一个进行处理.为了显示两者之间的区别,我们分别对线性内存和链表进行逆转: (1 ...

  4. C# 构造器总结

    在C#中,构造器分为实例构造器和类型构造器, 一.实例构造器 构造引用类型的对象时,在调用实例 构造器之前,为对象分配的内存总是归0,没有被构造器显示重写的字段都保证获得0或null的值 在一个类中, ...

  5. C#、.NET Framework、CLR的关系

    很多人没有将C#..NET Framework(.NET框架).CLR(Common Language Runtime,公共语言运行库)这三者之间的关系区分清楚,认为其版本号是一一对应的.其实不然,. ...

  6. rexray在CentOS上不能创建ceph rbd的docker volume问题定位

    背景 我们通过docker的rexray插件来创建ceph rbd设备的docker volume,但总提示创建失败. # docker volume create --driver=rexray - ...

  7. [国嵌攻略][163][linux-usb软件系统架构]

    软件系统架构 1.主机端软件架构 USB设备驱动->USB核心->USB主控制器驱动->USB主控制器 2.设备端软件架构 Gadget驱动->Gadget API->U ...

  8. [国嵌笔记][019][Eclipse集成开发环境]

    Eclipse集成开发环境的作用 可以编译程序,也可以对程序进行在线调试 集成开发环境 1.JLink连接开发板的JTAG 2.JLink连接PC的USB 3.eclipse软件 4.gdb serv ...

  9. Sqoop介绍

    Sqoop介绍 http://sqoop.apache.org http://sqoop.apache.org/docs/1.4.6/SqoopUserGuide.html   1.什么是Sqoop? ...

  10. HTTPS和HTTP的区别是什么?

    广泛应用于互联网世界的HTTP想必是大家再熟悉不过的了,然而细心的朋友可能发现淘宝.百度.网上银行等网站都变成HTTPS开头,并且还有一把小绿锁挂在地址栏,那么HTTPS和HTTP的区别是什么呢? 一 ...