《day06---面向对象入门》
/*
java开发流程:思路。 案例:对数组操作。获取最大值。
思路:
1,一组数,要获取最大值,比较。
2,怎么比较?挨个比较,要获取数组中的每一个数据都要比较。
3,比较完,记录下来比较大的数据,并用这个较大的数据和下一个
数据进行比较。
4,如果所有的数据都比较完,那么最后记录的较大的值就是最大值。 步骤:
1,需要一个类。
2,这个类需要独立运行,必须要有main方法。
3,需要有一个数组。
4,每一次较大的数据都有可能不同,需要一个变量。
5,把数组中的数都获取出来。需要遍历。
6,在遍历过程中,需要比较,判断。
7,每满足一次判断条件,就用变量记录较大的值。变量存储。
*/ //代码:
//1,需要一个类。
class ArrayDemo
{
//2,这个类需要独立运行,必须要有main方法。
public static void main(String[] args)
{
//3,需要有一个数组。
int[] arr = {23,12,18,0,1,9,56}; //4,每一次较大的数据都有可能不同,需要一个变量。
int maxValue = arr[0]; //初始化为数组中的任意一个元素。 //5,把数组中的数都获取出来。为了比较。需要遍历。
for(int i = 1;i<arr.length;i++)
{
//6,在遍历过程中,需要比较,判断。
//7,每满足一次判断条件,就用变量记录较大的值。变量存储。
if(arr[i] > maxValue)
{
maxValue = arr[i]; //只要遍历到的元素大于了maxValue,就用
//maxValue记录那个较大的值。
}
}
//8,一旦遍历结束,maxValue中存储的就是该数组中的最大值。
//9,为了显示出最大值,告诉使用者。输出语句。
System.out.println("最大值;"+maxValue);
}
} /*
案例2:又来了一个数组。还要获取最大值。复制代码并改变变量。麻烦。
既然代码不变,为什么不提高这段代码的复用性呢? 复用性。
Java中代码变成一个整体,通过函数体现的。所以函数就是一个类中的功能。
*/
class ArrayDemo2
{
//主函数。(主函数是用来测试功能的。)
public static void main(String[] agrs)
{
int[] arr2 = {23,12,18,0,1,90,56}; //获取最大值,需要一个功能。
int maxValue2 = getMaxValue(arr2);
System.out.println("maxValue2:"+maxValue2);
} //功能。
public static int getMaxValue(int[] arr)
{
int maxValue = arr[0]; for(int i = 1;i<arr.length;i++)
{
if(arr[i] > maxValue)
{
maxValue = arr[i];
}
}
//将最大值返回。
return maxValue;
}
} /*
案例3;继续升级。有很多的类中都有数组。都需要获取其最值。 将操作最大值的功能单独封装到一个类中。
这样使用这个功能只要找到功能所属的类就可以了。 所有的功能都在对象中,只要找到了对象,就可以使用这些功能了。
*/ class ArrayDemo3
{
public static void main(String[] agrs)
{
int[] arr3 = {23,12,180,0,1,90,56}; ArrayTool tool = new ArrayTool(); //获取最大值。
int maxValue3 = tool.getMaxValue(arr3);
System.out.println("maxValue3:"+maxValue3); //int maxVlaue3 = ArrayTool.getMaxValue(arr3); //获取最小值。
int minValue = tool.getMinValue(arr3);
System.out.println("minValue:"+minValue);
}
} class ArrayTool
{
//获取最大值。
public static int getMaxValue(int[] arr)
{
int maxValue = arr[0]; for(int i = 1;i<arr.length;i++)
{
if(arr[i] > maxValue)
{
maxValue = arr[i];
}
}
return maxValue;
} //获取最小值。
public /*static*/ int getMinValue(int[] arr)
{
//code...
return 0;
} //二分查找。折半查找法。
public /*static*/ int binarySearch(int[] arr,int key)
{
//code...
return 0;
}
}
《day06---面向对象入门》的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- Android M 特性 Doze and App Standby模式详解
版权声明:本文由郑桂涛原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/185 来源:腾云阁 https://www.qclo ...
- 【转】 C++中delete和delete[]的区别
一直对C++中的delete和delete[]的区别不甚了解,今天遇到了,上网查了一下,得出了结论.做个备份,以免丢失. C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete ...
- decorators.xml的用法 (转)
spring,hibernate框架做的,对了,还有jQuery. 我用jquery做异步请求到后台,生成json数据返回前台生成下拉输入框,请求到后台以后,成功生成了json数据并根据struts的 ...
- C# Form内存回收
namespace WebBrowserMemoryTest { public partial class Form1 : Form { private int _Pages; public Form ...
- C# EXCEL(.xls和.xlsx)导入到数据库
C# EXCEL(.xls和.xlsx)导入到数据库 转(http://www.cnblogs.com/bart-cai/articles/2716555.html) 原理:1.判断是否是Excel ...
- 通过chrome 获取网站的cookie信息
通过chrome 打开网页 审核元素 登录网站后 network列表中查看 home?开头列表项的 cookie信息
- Linux基础: 一切都是文件
一切都是文件 创建系统配置交换分区(用作虚拟内存)加上单根树 file 文件名 查看文件类型 uname 查看系统版本 bin binary二进制文件 所有用户可用 系统可执行命令的二进制文件(c ...
- (04)odoo视图操作
-----------------更新时间19:04 2016-09-29 星期四11:17 2016-09-18 星期日18:13 2016-04-05 星期二15:05 2016-03-14 星期 ...
- hdu----(5045)Contest(数位dp)
Contest Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Sub ...
- 【新手练习】类似Path的按钮,
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...