学习内容:while、do while,for、函数、
一、循环语句:while、do while、for
循环语句while
定义初始化表达式;
while(条件表达式)
{
循环体(执行语句);
}
*/
class WhileDemo
{
public static void main(String[] args)
{
int x = 1;
while(x<3)
{
System.out.println("x="+x);
x++;
}
int y = 1;
do
{
System.out.println("do:y="+y);
y++;
}
while(y<3);
}
}
/*
while:先判断条件,条件满足则执行循环体。do while:先执行循环体,再判断条件,条件满足则继续虚幻提。
总结:do while:无论条件是否满足,循环体至少执行一次。
//将while(x<3)和while(y<3)的3改为0试试不同。
*/
------------------------------------------------------------------------------------------
2.for与while的区别
/*
for(初始化表达式;循环条件表达式;循环后的操作表达式)
*/
class ForDemo
{
public static void main(String[]args)
{
for(int x =0;x<3;x++) //定义变量范围的区别
{
System.out.println("x="+x);
}
//尝试用while写出上面循环。
int y = 0; //定义变量范围的区别
while(y<3)
{
System.out.println("y="+y);
y++;
}
}
}
------------------------------------------------------------------------------------------
3.其他特点
class ForTest
{
public static void main(String[] args)
{
int x = 1;
for(System.out.println("a");x<6;System.out.println("b"))
{
System.out.println(x);
x++;
}
}
}
/*
最简单的无限表现方式:
for( ; ; ){}
while(ture){}
*/
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
二、循环练习:
1.累加(1~10求和)
class ForTest2
{
public static void main(String[] args)
{
//1,定义变量用于存储不断变化的和。
int sum = 0;
//2,定义变量,记录住不断变化被加的数。
int x = 1;
//3,定义循环,重复加法的过程。
while(x<=10)
{
sum += x;
x++;
}
System.out.println("while:1至10之间相加的和是"+sum);
int y = 0;
for(int z = 1;z<=10;z++)
{
y += z;
/*
当y是 int 类型时 y=y+z 和 y+=z 就这两个是没有区别的。
但当y是double就有区别了。
还有 += 的执行效率会稍微高一点,结果一样。
*/
}
System.out.println("for:1至10之间相加的和是"+y);
}
}
------------------------------------------------------------------------------------------
2. 1~100之间7的倍数的数有几个?
/*
1~100之间7的倍数的数有几个。
*/
class ForTest3
{
public static void main(String[] args)
{
int count = 0;
for(int x = 1;x<=100;x++ )
{
if(x % 7 ==0)
count++;
}
System.out.println("1~100之间7的倍数的个数是"+count+"个");
}
}
------------------------------------------------------------------------------------------
3.for嵌套练习
class ForForDemo
{
public static void main(String[] args)
{
for(int x=0;x<5;x++)
{
for(int y=x;y<5;y++)
{
System.out.print("*");
}
System.out.println();
}
System.out.println("-------------");
for(int a=0;a<5;a++)
{
for(int b=0;a>=b;b++)
{
System.out.print("*");
}
System.out.println();
}
System.out.println("-------------");
for(int c=1;c<=5;c++)
{
for(int d=1;d<=c;d++)
{
System.out.print(d);
}
System.out.println();
}
System.out.println("-------------");
for(int e=1;e<=9;e++)
{
for(int f=1;f<=e;f++)
{
System.out.print(f+"*"+e+"="+f*e+"\t");
}
System.out.println();
}
}
}
------------------------------------------------------------------------------------------
//语句练习。
class ForForTest2
{
public static void main(String[] args)
{
for(int x=0;x<5;x++)
{
for(int y=x+1s;y<5;y++)
{
System.out.print(" ");
}
for(int z=0; z<=x;z++)
{
System.out.print("* ");
}
System.out.println();
}
}
}
------------------------------------------------------------------------------------------
4.函数的概述
class FuctionDemo
/*
{
public static void getResult(int num)
{
System.out.println(num * 3 + 5);
}
public static void main(String[] args)
{
getResult(4); //当函数的返回值是void类型,return语句可以省略不写;
}
}
*/
{
public static int getResult(int num)
{
return(num * 3 + 5);
}
public static void main(String[] args)
{
int x = getResult(4);
System.out.println("x="+x);
}
}
------------------------------------------------------------------------------------------
5.函数的应用
class FuctionDemo2
{
public static void main(String[] args)
{
int sum = getSum(1,2);
System.out.println("sum="+sum);
sum = getSum(10000,100000);
System.out.println("sum="+sum);
}
public static int getSum(int x,int y)
{
return x + y;
}
//判断两个数是否相同。
public static boolean compare(int a,int b)
{
/*
//方法1 if(a==b)
return true;
else//这个可以不写
return flase;
//方法2 return (a==b)?true:flase;
*/
return a==b;
}
//定义功能,对两个数进行比较,获取较大的数。
public static int getMax(int c,int d)
{
return (a>b)?a:b;
}
}
------------------------------------------------------------------------------------------
5.函数的练习
/*
1,定义一个功能,用于打印举行。
2,定义一个打印99乘法表功能的函数。
*/
class FuctionTest
{
public static void main(String[] args)
{
draw(1,1);
printHx();
draw(2,2);
printHx();
draw(3,3);
printHx();
draw(4,4);
printHx();
print99();
printHx();
print992();
}
public static void draw(int row,int col)
{
for(int a=0;a<row;a++)
{
for(int b=0;b<col;b++)
{
System.out.print("$");
}
System.out.println();
}
}
public static void print99()
{
for(int c=1;c<=9;c++)
{
for(int d=1;d<=c;d++)
{
System.out.print(d+"*"+c+"="+d*c+"\t");
}
System.out.println();
}
}
public static void print992()
{
for(int e=9;e>=1;e--)
{
for(int f=1;f<=e;f++)
{
System.out.print(f+"*"+e+"="+f*e+"\t");
}
System.out.println();
}
}
public static void printHx()
{
System.out.println("---------------------------");
}
}
------------------------------------------------------------------------------------------
6.函数的重载(overload)
class FuctionOverLoad
{
public static void main(String[] args)
{
int add1 =add(3,6);
System.out.println(add1);
printHr();
int add2 =add(3,4,5);
System.out.println(add2);
printHr();
print99(6);
printHr();
print99(7);
printHr();
}
public static void printHr()
{
System.out.println("----------------------------");
}
//1.定义一个加法运算,获取两个整数的和。
public static int add(int a,int b)
{
return a+b;
}
//2.定义一个加法运算,获取三个整数的和。
/* public static int add1(int a,int b ,int c)
{
return a+b+c;
}
*/
public static int add(int a,int b ,int c)
{
return add(a,b)+c; //注意:这里是add(a,b)+c。
}
//3.打印一个九九乘法表,算到6、7。
public static void print99()
{
print99(9);
}
public static void print99(int sum)
{
for(int x=1;x<=sum;x++)
{
for(int y=1;y<=x;y++)
{
System.out.print(y+"*"+x+"="+x*y+"\t");
}
System.out.println();
}
}
}
------------------------------------------------------------------------------------------
7.内存结构-概述
class ArrayDemo
{
public static void main(String[] args)
{
int[] x= new int[3];
System.out.println(x[1]);
}
}