Java方法详解06 - 递归

递归的简单理解:A方法自己调用A方法,也就是说自己调用自己,就是递归。递归的核心思想:具体来说就是把复杂的问题,通过层层转化,转为一个与原问题相似的规模较小的问题来解决。在Java的方法实现上,这种相似的大问题转小问题的解决方式,就产生了自己调用自己的现象。总不能一直把大问题无限分解,总有一个小问题会结束分解,所以递归必须要有明显的结束条件,否则就是无限递归了。1. 递归的结构必须包括两个部分:递

Java方法详解05 - 可变参数

可变参数或者不定项参数JDK 1.5开始,Java支持传递同类型的可变参数给同一个方法。在方法声明中,在指定参数类型后加一个省略号(…)。如:// 参数类型+... public void add (int... i){}一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。如:// 可以多个参数,但可变参数要放最

Java方法详解04 - 命令行传参

Java 命令行传参详解说白了就是向Java的 main 方法传递参数,那怎么传呢,前面已经习惯了IDEA使用这集成工具,首先想到的是下面的Terminal标签,因为这是~Intellij IDEA~的终端模拟器,可以理解为Windows 的CMD。示例:package com.zctou.method; public class Demo04 { public static void

Java方法详解03 - 方法的重载

方法重载就是在一个类中,有相同的函数名,但形参列表不同的方法。方法重载的原则:名称必须相同。参数列表必须不同,就是个数、类型、参数排列顺序不同。重载中,方法的返回类型可相同可不同,不作要求。当只有返回类型不同时,不足以成为方法的重载。方法重载的理论:Java虚拟机发现方法名相同时,编译器会根据调用的方法参数列表逐个匹配,自主选择对应的方法,全部匹配失败时,编译器会报错。示例:package com

Java的方法详解02 - 方法定义及调用

前面已经解释过,Java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段(详解01),方法包含一个方法头和一个方法体。一、方法定义,其语法格式如下:修饰符 返回值类型 方法名(参数类型 参数名){ ... 方法体 ... return 返回值 }对照实例:// 修饰符 返回值类型 方法名 参数类型 参数名 public static void main

Java方法详解01 - 什么是方法

Java 方法是语句的集合,它们在块用于执行某一个功能。方法其实就是解决某一类问题的步骤的有序组合。方法包含在类或者对象之中。方法在程序中被创建,在其他地方被调用。方法的设计原则: 方法的本意是功能块,就是实现某个功能的语句块集合。在设计方法时,最好保持方法的原子性(就是一个方法只完成一个功能,有利于后期扩展)。方法的命名规则:驼峰原则,详情看以前笔记(Java基础语法06 - 变量、常量及作用域

Java流程控制练习 - 打印三角形

利用For循环打印三角形: 方法一:package com.zctou.structure; public class TestDemo02 { public static void main(String[] args) { // 用5行打印三角开明形 //分析:把要输出的三角形拆分成3份“半三角”,先是一个“倒三角”,现来两个“正三角”即可。

Java流程控制11 - break continue goto详解

1. 关于BreakBreak 主要用于 强行退出循环, 在任何循环体内都可以利用break控制循环的流程,出现break后,循环体内的剩余语句皆不会被执行。break 示例:package com.zctou.structure; public class BreakDemo01 { public static void main(String[] args) { fo

Java 流程控制10 - 增强for循环

增强for循环是一种特殊的For循环,用于遍历数组或者集合,是Java5 引入的一种便捷性For循环。Java增强For循环语法格式:for (声明语句:表达式) { //循环语句 }声明语句: 声明新的局部变量,该变量的类型必须和数组元素的类型一致。作用域与for循环一样,是【局部变量】,作用域只在{}内。变量的值与当前数组元素的值相等。表达式:是要访问的 数组名 或者是 返回值为数组的

Java流程控制09 - For循环打印九九乘法表

小学的九九乘法表还记得吧,不记得也没关系,上个图回忆一下:前面学过for循环的简单使用,这里来点复杂的。想要写一九九乘法表,就得用到for循环的嵌套使用方法。第一步:可以看到,九九乘法表看上去像缺半的三角,补全完应该是个9x9的方形,如下图:那么输出上图就很简单了,嵌套for循环,一个控制列数,一个控制行数package com.zctou.structure; public class For