——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
04.01_Java语言基础(循环结构概述和for语句的格式及其使用)
- A:什么是循环结构// 可以反复执行,同一段程序
- B:循环结构的分类// for while do while 增强for(foreach)
- C:循环结构for语句的格式:
-
for(初始化表达式;条件表达式;增量表达式) {
循环体;
} - D:执行流程:
- a:执行初始化语句
- b:执行判断条件语句,看其返回值是true还是false
- 如果是true,就继续执行
- 如果是false,就结束循环
- c:执行循环体语句;
- d:执行控制条件语句(增量表达式)
- e:回到B继续。
- E:案例演示
- 在控制台输出10次”helloworld”
for (int i = 0; i < 10; i++) {
System.out.println("Hello World");
}
04.02_Java语言基础(循环结构for语句的练习之获取数据)
- A:案例演示
- 需求:请在控制台输出数据1-10
for (int i = 1; i <= 10; i++) {
System.out.println(i);
}
- 需求:请在控制台输出数据10-1
for (int i = 10; i > 0 ; i--) {
System.out.println(i);
}
- B:注意事项
- a:判断条件语句无论简单还是复杂结果是boolean类型。
- b:循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。
- c:一般来说:有左大括号就没有分号,有分号就没有左大括号
04.03_Java语言基础(循环结构for语句的练习之求和思想)
- A:案例演示
- 需求:求出1-10之间数据之和
int sum = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
}
System.out.println(sum); - 需求:求1-100之和
- 需求:求出1-100之间偶数和
- 需求:求出1-10之间数据之和
int sum = 0;
for (int i = 0; i <= 100; i+=2) {
sum += i;
}
System.out.println(sum);
- 需求:求出1-100之间奇数和
int sum = 0;
for (int i = 0; i <= 100; i++) {
if (i % 2 != 0)
sum += i;
}
System.out.println(sum);
04.04_Java语言基础(循环结构for语句的练习之水仙花)
A:案例演示
需求:在控制台输出所有的”水仙花数”
所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
- 举例:153就是一个水仙花数。
- 153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153
04.05_Java语言基础(循环结构for语句的练习之统计思想)
- A:案例演示
- 需求:统计”水仙花数”共有多少个
//定义变量,计数器作用
int count = 0 ;
for(int i = 100 ; i < 1000; i++){
//定义三个变量,获取三个数位
int bai = i/100;
int shi = i/10%10;
int ge = i%10;
//百位的立方+十位的立方+个位的立方
if((bai*bai*bai + shi*shi*shi + ge*ge*ge)==i){
System.out.println(i+"是水仙花");
count++;
}
}
System.out.println("一共有 "+count+" 个水仙花");
04.06_Java语言基础(循环结构while语句的格式和基本使用)
- A:循环结构while语句的格式:
while循环的基本格式: while(判断条件语句) { 循环体语句; } 完整格式: 初始化语句; while(判断条件语句) { 循环体语句; 控制条件语句; }
- B:执行流程:
- a:执行初始化语句
- b:执行判断条件语句,看其返回值是true还是false
- 如果是true,就继续执行
- 如果是false,就结束循环
- c:执行循环体语句;
- d:执行控制条件语句
- e:回到B继续。
- C:案例演示
- 需求:在控制台输出10次”helloworld”
int i = 0;
while(i<10){
System.out.println("Hello World");
i++;
}
- 需求:请在控制台输出数据1-10
int i = 1;
while(i<=10){
System.out.println(i);
i++;
}
04.07_Java语言基础(循环结构while语句的练习)
- A:求和思想
- 求1-100之和
- B:统计思想
- 统计”水仙花数”共有多少个
//求出1-100之和
int sum = 0 ;
int i = 1;
while(i<=100){
sum = sum + i ;
i++;
}
System.out.println("sum="+sum);
int j = 100;
while(j <= 999){
int bai = j/100;
int shi = j/10%10;
int ge = j%10;
if((bai*bai*bai + shi*shi*shi + ge*ge*ge)==j){
System.out.println(j+"是水仙花");
}
j++;
}
04.08_Java语言基础(循环结构do…while语句的格式和基本使用)
- A:循环结构do…while语句的格式:
do { 循环体语句; }while(判断条件语句); 完整格式; 初始化语句; do { 循环体语句; 控制条件语句; }while(判断条件语句);
- B:执行流程:
- a:执行初始化语句
- b:执行循环体语句;
- c:执行控制条件语句
- d:执行判断条件语句,看其返回值是true还是false
- 如果是true,就继续执行
- 如果是false,就结束循环
- e:回到b继续。
04.09_Java语言基础(循环结构三种循环语句的区别)
- A:案例演示
- 三种循环语句的区别:
- do…while循环至少执行一次循环体。
- 而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。
- B:案例演示
- for循环和while循环的区别:
- A:如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。
- B:建议:
- 如果是一个范围的,用for循环非常明确。
- 如果是不明确要做多少次,用while循环较为合适。
- 举例:吃葡萄。
- while(x != 0)
- for循环和while循环的区别:
04.10_Java语言基础(循环结构注意事项之死循环)
- A:一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。
- B:两种最简单的死循环格式
- while(true){…}
- for(;;){…}
04.11_Java语言基础(循环结构循环嵌套输出4行5列的星星)
- A:案例演示
- 需求:请输出一个4行5列的星星(*)图案。
-
如图:
*
*
*
*
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 5; j++) {
// 输出,不换行
System.out.print("*");
}
// 输出什么也没有,只换行
System.out.println();
}
注意:
System.out.println("*");和System.out.print("*");的区别
* B:结论:
* 外循环控制行数,内循环控制列数
04.12_Java语言基础(循环结构循环嵌套输出正三角形)
- A:案例演示
-
需求:请输出下列的形状
*
**
***
****
*****
for (int i = 0; i < 5; i++) {
for (int j = 0; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
输出三角形的技巧:
如果三角形,尖朝上,修改,内层循环的 条件
如果三角形,尖朝下,修改,内存循环的 初始化变量
04.13_Java语言基础(循环结构九九乘法表)
- A:案例演示
- 需求:在控制台输出九九乘法表。
- B:代码优化
for(int i = 1 ; i <=9 ; i++){
for(int j = 1 ; j <= i ; j++){
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println();
}
注意:
'\x' x表示任意,这种做法叫转移字符。
'\t' tab键的位置
'\r' 回车
'\n' 换行
04.14_Java语言基础(控制跳转语句break语句)
- A:什么是控制跳转语句
- B:控制跳转语句的分类
- C:break的使用场景
可以写在switch,可以写在循环中
结束循环
04.15_Java语言基础(控制跳转语句continue语句)
- A:continue的使用场景
这个关键字,用法非常单一,只能跟随循环出现,其他其地方,不能写continue
终止本次循环,开始下一次循环 - C:练习题
for(int x=1; x<=10; x++) { if(x%3==0) { //在此处填写代码 } System.out.println(“Java基础班”); } 我想在控制台输出2次:“Java基础班“//break 我想在控制台输出7次:“Java基础班“//continue 我想在控制台输出13次:“Java基础班“//再写一句println
04.16_Java语言基础(控制跳转语句return语句)
- A:return的作用
- 返回
- 其实它的作用不是结束循环的,而是结束方法的。
04.17_Java语言基础(方法概述和格式说明)
- A:为什么要有方法//将重复,而且经常使用的代码,封装到一起,当你需要的时候
直接找这个方法即可 - B:什么是方法//即是函数
- C:方法的格式
- 修饰符 返回值类型 方法名 (参数列表1,参数列表2…){
方法体
return ;
} - D:方法的格式说明
- E:画图演示
- 把刚才的的推荐调用方式画图解释
- 把刚才的的推荐调用方式画图解释
04.18_Java语言基础(方法之求和案例及其调用)
- A:如何写一个方法
写一个要求:定义方法
计算两个整数的和,需要结果
如何运行方法:调用方法,写要调用方法的名字,传递未知数 - B:案例演示
- 需求:求两个数据之和的案例
public static void main(String[] args)
{
//调用getSum方法
int sum = getSum(2,6);
System.out.println(sum);
}
//定义方法,实现两个整数和,返回结果
public static int getSum(int a ,int b){
//方法主体中,计算两个整数的和,并且返回结果
return a + b ;
}
04.19_Java语言基础(方法的注意事项)
- A:方法调用
- a:单独调用,一般来说没有意义,所以不推荐。
- b:输出调用,但是不够好。因为我们可能需要针对结果进行进一步的操作。
- c:赋值调用,推荐方案。
- B:案例演示
- a:方法不调用不执行
- b:方法与方法是平级关系,不能嵌套定义
- c:方法定义的时候参数之间用逗号隔开
- d:方法调用的时候不用在传递数据类型
- e:如果方法有明确的返回值,一定要有return带回一个值
04.20_Java语言基础(方法的练习)
- A:案例演示
- 需求:键盘录入两个数据,返回两个数中的较大值
- B:案例演示
- 需求:键盘录入两个数据,比较两个数是否相等
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
//调用方法,获取最大值,赋值变量
//int max = getMax(a,b);
//System.out.println("max="+max);
//调用方法,获取两个数是否相等
//boolean bool = getEquals(a,b);
//System.out.println("b="+bool);
//调用方法,获取三个数的最大值
int max = getThreeMax(a,b,c);
System.out.println("max="+max);
}
//定义方法,传递3个数,返回最大值
public static int getThreeMax(int a,int b,int c){
return (a>b) ? (a>c)?a:c : (b>c)?b:c;
}
//定义方法,传递2个值,返回是否相等
public static boolean getEquals(int a,int b){
return a == b;
}
//传递2个参数,返回最大数
public static int getMax(int a,int b){
/*if(a>b)
return a;
return b;*/
return (a>b)?a:b;
}
04.21_Java语言基础(方法之输出星形及其调用)
- A:案例演示
- 需求:根据键盘录入的行数和列数,在控制台输出星形
- B:方法调用:
- 单独调用
- 输出调用(错误)
- 赋值调用(错误)
04.22_Java语言基础(方法的练习)
- A:案例演示
- 需求:根据指定数据输出对应的乘法表
public static void main(String[] args)
{
print99(7);
print99(3);
//System.out.println("Hello World!");
}
public static void print99(int number){
for(int i = 1 ; i <=number ; i++){
for(int j = 1 ; j <= i ; j++){
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println();
}
}
04.23_Java语言基础(方法重载概述和基本使用)
- A:方法重载概述
- 求和案例
- 2个整数
- 3个整数
- 4个整数
- 求和案例
B:方法重载:
在同一个类中,方法名相同,参数列表不同。与返回值类型无关。
参数列表不同:
- A:参数个数不同
- B:参数类型不同
- C:参数的顺序不同(算重载,但是在开发中不用)
04.24_Java语言基础(方法重载练习比较数据是否相等)
- A:案例演示
- 需求:比较两个数据是否相等。参数类型分别为两个byte类型,
- 两个short类型,两个int类型,两个long类型,并在main方法中进行测试
public static void main(string[] args){
}
public static int getSum(int a , int b){
return a+b;}
public static int getSum(int a){
}
System.out.println();
for (int = 1;i<=9 ;i++ )
{
for (int j = 1;j <=i ;j++ )
{
System.out.print(j+"*"+i+"="+i*j+"\t");
}
}System.out.println();
{
//System.out.println("Hello World!");
//method(10,false);
short s = 120;
int a = method(8,8==9);
System.out.println(a);
}
public static void method(){
System.out.println("空参数");
}
public static void method(int a){
System.out.println("有1个int参数");
}
public static int method(int a,boolean b){
System.out.println("有2个参数,int boolean");
return 123;
}
public static void method(boolean b){
}
public static void method(boolean b,int a){
}
public static void method(short a){
System.out.println("有1个short参数");
}