一,for循环嵌套
大圈套小圈思想
//输出一些矩形,三角形,九九乘法表等
for(int x=0;x<4;x++)
{
for(int y=0;y<5;y++)
{
sop("*");
}
sop("\n");
}
/*输出
*****
*****
*****
*/
for(int x=0;x<4;x++)
{
for(int y=x;y<5;y++)
{
sop(y);
}
sop("\n");
}
/*输出
01234
1234
234
34
*/
public static void for2()
{
for(int x=1;x<=5;x++)
{
for(int y=1;y<x;y++)
{
sop(" ");
}
for(int z=x;z<=5;z++)
{
sop("* ");
}
sop("\n");
}
}
/*输出
* * * * *
* * * *
* * *
* *
*
*/
public static void for3()
{
for(int x=1;x<=9;x++)
{
for(int y=1;y<=x;y++)
{
System.out.print(y+"*"+x+"="+x*y+"\t");
}
System.out.println();
}
}
/*输出
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
*/
break和continue的区别
break:作用于switch 语句和循环语句,用于跳出,或者称为结束。break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
A:for(int x=0;x<3;x++)
{
B:for(int y=0;y<3;y++)
{
sop(x);
break A;
}
}
//输出0
continue:只作用于循环结构,继续循环用的。作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。
for (int x=0;x<=100;x++)
{
if (x%2!=0)
continue;
sop(x);
}
//输出0倒100之间的偶数
二,函数
函数:或称为方法,就是定义在类中的具有特定功能的一段独立的小程序。
函数格式:
/* 函数格式:
* 修饰符 返回值类型 函数名(参数类型 变形式参数1,参数类型 形式参数2,……){
* 执行语句;
* return 返回值;
* }
* 特殊情况:没有具体返回值
* return:
* 返回值类型不确定,用void来表示,此时函数中return可以省略
* 函数的特点:
* 1,定义函数可以将功能代码进行封装
* 2,便于对该功能进行复用
* 3,函数只有被调用才运行
* **函数的出现提高了代码的复用性**
* /
/*
* 注意:
* 1,不可再函数内部再定义函数
* 2,函数返回值要交由调用者处理
*
* 函数的两个明确:
* 1,明确这个功能的结果
* 2,这个功能运行过程中是否有未知参数参与运算
*误区:
*返回值类型和形参类型没有关系
*/
一些函数示例
public class FunctionDemo {
public static void main(String[] args) {
// int c = add(3,4);
// System.out.println("c="+c);
// draw(3,4);
// excel9_9();
}
//1,定义一个简单的加法功能
public static int add(int a,int b) {
return a+b;
}
//2,画一个矩形在控制台
public static void draw(int row,int col) {
for(int x=0;x<row;x++) {
for(int y=0;y<col;y++) {
System.out.print("*");
}
System.out.println();
}
}
//3,比较两个数是否相等
public static boolean equals(int a,int b) {
return a==b;
}
//4,比较两个数大小
public static int max(int a,int b) {
return a>b?a:b;
}
//5,实现九九乘法表
public static void excel9_9() {
for(int x=1;x<=9;x++) {
for(int y=1;y<=x;y++) {
System.out.print(y+"*"+x+"="+x*y+"\t");
}
System.out.println();
}
}
}
函数的重载
重载:在一个类中,如果出现了两个或者两个以上的同名函数,只要它们的参数的个数,或者参数的类型不同,即可称之为该函数重载了。
如何区分重载:当函数同名时,只看参数列表。和返回值类型没关系。
//示例
public class Overload {
public static void main(String[] args) {
int sum=add(3,4,5);
System.out.println(sum);
}
public static int add(int a,int b) {
return a+b;
}
public static int add(int a,int b,int c) {
return a+b+c;
}
//重载应用一:函数复用
public static void excel(int num)//打印乘法表
{
for(int x=1;x<=num;x++) {
for(int y=1;y<=x;y++) {
System.out.print(y+"*"+x+"="+x*y+"\t");
}
System.out.println();
}
}
public static void excel()//打印99乘法表
{
for(int x=1;x<=9;x++) {
for(int y=1;y<=x;y++) {
System.out.print(y+"*"+x+"="+x*y+"\t");
}
System.out.println();
}
}
}