面向对象的小demo
两个类如下
package cao.com.duixiang;
import java.util.Arrays;
public class OtherTest {
//求max
public int getMax(int[] arr) {
int max = arr[0];
for(int i=1;i<arr.length;i++){
if(max<arr[i]){
max = arr[i];
}
}
return max;
}
//求min
public int getMin(int[] arr) {
int min = arr[0] ;
for(int i=1;i<arr.length;i++){
if(min>arr[i]){
min = arr[i];
}
}
return min;
}
//遍历数组,没有返回值
public void getBianLi(int[] arr) {
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+"\t");
}
}
//求avg
public void getSum(int[] arr) {
int sum = 0;
for(int i=0;i<arr.length;i++){
sum += arr[i];
}
System.out.println("和为:"+sum);
int avg = sum/arr.length;
System.out.println("平均数为:"+avg);
}
//求反转
public void getFanZhuan(int[] arr) {
for(int i=0;i<arr.length/2-1;i++){
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+"\t");
}
}
//复制
public void getCopy(int[] arr) {
int[] arr1 = new int[arr.length];
for(int i=0;i<arr.length;i++){
arr1[i] = arr[i];
System.out.print(arr1[i]+"\t");
}
}
//这个是排序,冒泡排序
public void getPaiXu(int[] arr) {
//代表的次数
for(int i=0;i<arr.length;i++){
//代表的实际数字
for(int j=0;j<arr.length-1;j++){
if(arr[j]>arr[j+1]){
int max = arr[j];
arr[j] = arr[j+1];
arr[j+1] = max;
}
}
}
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+"\t");
}
}
//这个是直接选择排序
public void getZhiJie(int[] arr){
for(int i=0;i<arr.length;i++){
for(int j=i;j<arr.length;j++){
if(arr[i]>arr[j]){
int min = arr[j];
arr[j] = arr[i];
arr[i] = min;
}
}
}
for(int i =0;i<arr.length;i++){
System.out.print(arr[i]+"\t");
}
}
public void getKuaiPai(int[] arr){
Arrays.sort(arr);
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+"\t");
}
}
}
调用上面的方法
代码如下
package cao.com.duixiang;
public class DiaoYong {
public static void main(String[] args) {
int[] arr = new int[]{12,4,76,0,-98,-54,4,100};
OtherTest ot = new OtherTest();
int sumMax = ot.getMax(arr);
System.out.println("最大值为:"+sumMax);
int sumMin = ot.getMin(arr);
System.out.println("最小值为:"+sumMin);
//执行的是遍历的功能
ot.getBianLi(arr);
System.out.println();
//执行的是和和平均数的算法
ot.getSum(arr);
System.out.println("下面这个是反转");
ot.getFanZhuan(arr);
System.out.println();
System.out.println("下面这个是复制");
//求copy
ot.getCopy(arr);
System.out.println();
System.out.println("这个是冒泡排序");
ot.getPaiXu(arr);
System.out.println();
System.out.println("这个是直接排序");
ot.getZhiJie(arr);
System.out.println();
System.out.println("这个是排序的方法");
ot.getKuaiPai(arr);
}
}
面向对象的小demo的更多相关文章
- Java学习笔记二十九:一个Java面向对象的小练习
一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...
- JavaScript面向对象编程小游戏---贪吃蛇
1 面向对象编程思想在程序项目中有着非常明显的优势: 1- 1 代码可读性高.由于继承的存在,即使改变需求,那么维护也只是在局部模块 1- 2 维护非常方便并且成本较低. 2 这个demo是采用了 ...
- 【Java】Jsoup爬虫,一个简单获取京东商品信息的小Demo
简单记录 - Jsoup爬虫入门实战 数据问题?数据库获取,消息队列中获取中,都可以成为数据源,爬虫! 爬取数据:(获取请求返回的页面信息,筛选出我们想要的数据就可以了!) 我们经常需要分析HTML网 ...
- 新手 gulp+ seajs 小demo
首先,不说废话,它的介绍和作者就不在多说了,网上一百度一大堆: 我在这里只是来写写我这2天抽空对seajs的了解并爬过的坑,和实现的一个小demo(纯属为了实现,高手请绕道); 一.环境工具及安装 1 ...
- Nancy之基于Nancy.Hosting.Self的小Demo
继昨天的Nancy之基于Nancy.Hosting.Aspnet的小Demo后, 今天来做个基于Nancy.Hosting.Self的小Demo. 关于Self Hosting Nancy,官方文档的 ...
- Nancy之基于Nancy.Owin的小Demo
前面做了基于Nancy.Hosting.Aspnet和Nancy.Hosting.Self的小Demo 今天我们来做个基于Nancy.Owin的小Demo 开始之前我们来说说什么是Owin和Katan ...
- Nancy之基于Self Hosting的补充小Demo
前面把Hosting Nancy with ASP.NET.Self Hosting Nancy和Hosting Nancy with OWIN 以demo的形式简单描述了一下. 这篇是为Self H ...
- [Unity3D]做个小Demo学习Input.touches
[Unity3D]做个小Demo学习Input.touches 学不如做,下面用一个简单的Demo展示的Input.touches各项字段,有图有真相. 本项目已发布到Github,地址在(https ...
- Android -- 自定义View小Demo,动态画圆(一)
1,转载:(http://blog.csdn.NET/lmj623565791/article/details/24500107),现在如下图的效果: 由上面的效果图可以看到其实是一个在一个圆上换不同 ...
随机推荐
- Moment.js 超棒Javascript日期处理类库
Moment.js 不容错过的超棒Javascript日期处理类库 主要特性: 3.2kb超轻量级 独立类库,意味这你不需要倒入一堆js 日期处理支持UNIX 时间戳,String,指定格式的Date ...
- Unity手游之路<七>角色控制器
Unity手游之路<七>角色控制器 我们要控制角色的移动,可以全部细节都由自己来实现.控制角色模型的移动,同时移动摄影机,改变视角.当然Unity也提供了一些组件,可以让我们做更少的工作, ...
- Java BigDecimal详解
借用<Effactive Java>这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算.他们执行二进制浮点运算,这是为了在广域数值范围上提供 较为精确的快速近 ...
- Linux之Shell的算术运算
在Bash的算术运算中有以下几种方法:名称 语法 范例算术扩展 $((算术式)) r ...
- java计算时间差
比如:现在是2016-03-26 13:31:40 过去是:2016-01-02 11:30:24 我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒 方法一: DateFo ...
- net-snmp5.7.3移植到arm-linux平台
net-snmp5.7.3移植到arm-linux平台 本次交叉编译在ubuntu 15.04 64位系统下进行. 准备工作 在编译移植前有几项准备工作需要完成. 1下载net-snmp 5.7.3源 ...
- Github Bash
第一步生成密钥:ssh-keygen -C 'your@email.address' 第二步验证结果:ssh -T git@github.com 第三步克隆:git clone https://git ...
- VS2012创建UML项目
1.选择建模工具 2.添加新建项 3.添加UML图或用例图 4.打开工具箱添加
- 【Java】Java 深入探讨 单例模式的实现
在GoF的23种设计模式中,单例模式是比较简单的一种.然而,有时候越是简单的东西越容易出现问题.下面就单例设计模式详细的探讨一下. 所谓单例模式,简单来说,就是在整个应用中保证只有一个类的实例存在 ...
- C# 复制(深拷贝、浅拷贝)
Object.MemberwiseClone 方法 创建当前 Object 的浅表副本. protected Object MemberwiseClone() MemberwiseClone 方法创建 ...