JAVA_SE基础——16.方法
接触过C语言的同学,这小章节很容易接受。Java中的方法是类似与C语言中的函数 功能和调用方法都类似 只不过叫法不一样 因为java是面向对象 c是面向过程 仅仅是叫法不同。。 。
看到15章节的同学,应该都会话矩形吧,现在先看一下在不使用方法时如何实现打印三个长宽不同的矩形,代码如下:
public class Rectangle01 {
public static void main(String[] args) {
// 下面的循环是使用*打印一个宽为5、高为3的矩形
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
// 下面的循环是使用*打印一个宽为4、高为2的矩形
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 4; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
// 下面的循环是使用*打印一个宽为10、高为6的矩形
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 10; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
}
}
结果如下图:
上面的代码分别使用了三个嵌套for循环完成了三个矩形的打印,仔细观察会发现,这三个嵌套for循环的代码是重复的,都在做一样的事情,此时,就可以将使用“ * ”打印矩形的功能定义为方法,在程序中调用三次即可,修改后代码如下:
public class Rectangle02 {
public static void main(String[] args) {
printRectangle(3, 5); // 调用 printRectangle()方法实现打印矩形
printRectangle(2, 4);
printRectangle(6, 10);
}
// 下面定义了一个打印矩形的方法,接收两个参数,其中height为高,width为宽
public static void printRectangle(int height, int width) {
// 下面是使用嵌套for循环实现*打印矩形
for (int i = 0; i < height; i++) {
for (int j = 0; j < width; j++) {
System.out.print("*");
}
System.out.print("\n");
}
System.out.print("\n");
}
}
结果如下:
运行结果还是一样。
Java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,声明格式为:
[修饰符1 修饰符2 …..] 返回值类型 方法名( 形式参数列表 ){
Java 语句;… … …
}
语法解释:
- 形式参数:在方法被调用时用于接收外界输入的数据。
- 实参:调用方法时实际传给方法的数据。
- 返回值:方法在执行完毕后返回给调用它的环境的数据。
- 返回值类型:事先约定的返回值的数据类型,无返回值,必须给出返回类型viod。
- Java语言中使用下述形式调用方法:对象名.方法名(实参列表)
- 实参的数目、数据类型和次序必须和所调用方法声明的形式列表匹配。
- return语句中止方法的运行并指定要返回的数据。
Java中进行函数调用中传递参数时,遵循传递的原则:
基本类型传递的是该数据本身,引用类型传递的是对象的引用,不是对象本身
JAVA_SE基础——16.方法的更多相关文章
- JAVA_SE基础——18.方法的递归
方法的递归是指在一个方法的内部调用自身的过程,递归必须要有结束条件,不然就会陷入无限递归的状态,永远无法结束调用,接下来用一个最简单的例子来体现下方法递归,使用递归算法计算自然数之和: public ...
- JAVA_SE基础——17.方法的重载
方法重载: 方法重载就是方法名称重复,加载参数不同. 具体规范: 一.方法名一定要相同. 二.方法的参数表必须不同,包括参数的类型或个数,以此区分不同的方法体. 1.如果参数个数不同,就不管它的参数类 ...
- JAVA_SE基础——8.基本数据类型
基本数据类型有:整数类型.浮点类型.字符类型.布尔类型 整数类型 整数类型用来存储整数数值,即没有小数部分的数值.与C.C++语言相同,整数在Java语言中有3种表示形式:十进制.八进制和十六进制. ...
- JAVA_SE基础——6.标识符&关键字
学会写helloworld之后, 我们就开始来认识标识符&关键字 一.标识符 标识符是指可被用来为类.变量或方法等命名的字符序列,换言之,标识符就是用户自定义的名称来标识类.变量或方法等.更 ...
- [.net 面向对象编程基础] (16) 接口
[.net 面向对象编程基础] (16) 接口 关于“接口”一词,跟我们平常看到的电脑的硬件“接口”意义上是差不多的.拿一台电脑来说,我们从外面,可以看到他的USB接口,COM接口等,那么这些接口的目 ...
- JAVA_SE基础——26.[深入解析]局部变量与成员变量的区别
黑马程序员入学blog ... 如果这章节很难懂的话应该返回去先看 JAVA_SE基础--10.变量的作用域 定义的位置上区别: 1. 成员变量是定义在方法之外,类之内的. 2. 局部变量是定义在方 ...
- JAVA_SE基础——9.基本数据类型间的转换
前面我已经教会大家基本的数据类型进行了介绍, 然后这篇文章,我来介绍下,基本数据类型的转换. Java中有两种类型转换形式,分别是自动类型转换和强制类型转换. Step1.自动类型转换. 自动类型 ...
- JAVA_SE基础——7.常量&变量
上一篇,我讲了标识符&关键字 这篇我来解释下变量&常量~~~ 变量与常量这两个概念相信大家都不会感到陌生,在数学中就已经涉及了变量与常量.理解变量与常量,可以举这样一个例子: 例 ...
- JAVA_SE基础——4.path的临时配置&Classpath的配置
这次,我来写下关于path的临时配置的心的 我来说个有可能的实例:如果你去到别人的电脑 又想写代码 又不想改乱别人的path配置的话 再说别人愿意你在别人的电脑上瞎配吗? 那该怎么办呢? 那没问题 ...
随机推荐
- Vue-自定义事件之—— 子组件修改父组件的值
如何利用自定义的事件,在子组件中修改父组件里边的值? 关键点记住:三个事件名字 步骤如下: 这里,相对本案例,父组件定义为Second-module,对应的子组件是Three-module 第一步:你 ...
- .NET Core使用skiasharp文字头像生成方案(基于docker发布)
一.问题背景 目前.NET Core下面针对于图像处理的库微软并没有集成,在.NET FrameWork下我们已经习惯使用System.Drawing类库做简单的图像处理,到了.NET Core下一脸 ...
- JavaScript:['1','2','3'].map(parseInt)问题解析
最近碰到了['1','2','3'].map(parseInt)这种看似不起眼陷阱却极大的问题. 这乍一看,感觉应该会输出[1,2,3].但是,实际上并不是我们想的这样.你可以现在打开console, ...
- angular2 实现的小项目
之前根据官网的demo做了一个小例子,将的都比较基本,为了更好的提高对angular的认知,又做了一个小例子,目前还不完善.主要有路由,http,组件之间的通信,服务等基本知识. 项目地址:https ...
- NancyFX 第五章 Nancy 路由
在Nancy中,最为神奇的莫过于路由了,定义路由模块是构成Nancy应用的骨架.在Nancy中定义路由,和在 ASP.NET MVC那些类似的框架中有着非常大的区别. 以 ASP.NET MVC 为例 ...
- Java并发编程实战(chapter_1)(原子性、可见性)
混混噩噩看了很多多线程的书籍,一直认为自己还不够资格去阅读这本书.有种要高登大堂的感觉,被各种网络上.朋友.同事一顿外加一顿的宣传与传颂,多多少少再自我内心中产生了一种敬畏感.2月28好开始看了之后, ...
- Intellij IDEA查看所有断点
项目中打的断点太多,有时自己也想不到打在哪里了,也不知道哪些方法.哪些代码行上打了断点,在IDEA中如何查看所有断点呢? 方法如下: step 1 IDEA的debug面板中有一个名称为View Br ...
- ServiceFabric极简文档-1.0 Service Fabric 自定义集群部署
Service Fabric 部署集群:https://docs.microsoft.com/zh-cn/azure/service-fabric/service-fabric-get-started ...
- Python基本知识
python是一门编程语言,这是我们学习python首先要了解的内容,那么编程语言又是什么,我们为什么需要编程语言 我们讲的话是汉语,英语或者其他语言,计算机也可以讲话,但是他只会说0,1,也只能看懂 ...
- git使用.gitignore设置不生效或不起作用的问题
偶然遇到的问题,记录如下: 通常我们在push项目时,会有些配置文件或本地文件不想上传到服务器上 这时候我们会通过设置.gitignore 文件 一般设置成这样: # 20170418 by 51a ...