您的位置:首页 > 编程语言 > Java开发

一起学Java_Java语言基础(3)

2017-07-13 14:36 169 查看

04.01_Java语言基础(循环结构概述和for语句的格式及其使用)

A:循环结构的分类

for,while,do…while

B:循环结构for语句的格式:

for(初始化表达式;条件表达式;循环后的操作表达式) {

循环体;

}

C执行流程:

a:执行初始化语句

b:执行判断条件语句,看其返回值是true还是false

如果是true,就继续执行

如果是false,就结束循环

c:执行循环体语句;

d:执行循环后的操作表达式

e:回到B继续。

D:案例演示

在控制台输出10次”helloworld”

for(int i=1;i<=10;i++){

System.out.println("helloworld");

}


04.02_Java语言基础(循环结构for语句的练习之获取数据)

A:案例演示

需求:请在控制台输出数据1-10

需求:请在控制台输出数据10-1

for(int i=1;i<=10;i++){

System.out.println(i);

}

for(int i=10;i>=1;i--){

System.out.println(i);

}


B:注意事项

a:判断条件语句无论简单还是复杂结果是boolean类型。

b:循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。

c:一般来说:有左大括号就没有分号,有分号就没有左大括号

04.03_Java语言基础(循环结构for语句的练习之求和思想)

A:案例演示

需求:求出1-10之间数据之和

B:学生练习

需求:求出1-100之间偶数和

需求:求出1-100之间奇数和

`int sum=0;

int sum1=0;

int sum2=0;

for(int i=1;i<=10;i++){

sum+=i;

}

System.out.println(sum);

for(int i=1;i<=100;i++){

if(i%2==0){

sum1 +=i;

}else{

sum1=sum1;

}

}

System.out.println(sum1);

for(int i=1;i<=100;i++){

if(i%2!=0){

sum2 +=i;

}else{

sum1=sum1;

}

}

System.out.println(sum2);`

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 x=0;

int sum=0;

int a=0,b=0,c=0;

for(int i=100;i<=999;i++){

a=(i/100)%10;//可以求任意为数的个十百位数字

b=(i/10)%10;

c=(i%10);

if((a*a*a+b*b*b+c*c*c)==i){

x=i;

sum+=1;

System.out.println(x);

}

}

System.out.println("水仙花个数为:"+sum);


04.06_Java语言基础(循环结构while语句的格式和基本使用)

A:循环结构while语句的格式:

while循环的基本格式:
while(判断条件语句) {
循环体语句;
}

完整格式:

初始化语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}


B:执行流程:

a:执行初始化语句

b:执行判断条件语句,看其返回值是true还是false

如果是true,就继续执行

如果是false,就结束循环

c:执行循环体语句;

d:执行控制条件语句

e:回到B继续。

C:案例演示

需求:请在控制台输出数据1-10

int i=1;//方法一

while(i<=10){

System.out.println(i++);

}

int j=1;//方法二

while(j<=10){

System.out.println(j);

j++;

}


04.07_Java语言基础(循环结构while语句的练习)

A:求和思想

求1-100之和

int i=1;</li>

<li>int sum=0;</li>

<li>while(i<=100){</li>

<li>sum+=i++;//等同于sum+=i;i++;</li>

<li>}</li>

<li>System.out.println(sum);


B:统计思想

统计”水仙花数”共有多少个

int j=100;

int a=0,b=0,c=0,count=0;

while(j<=999){

a=(j/100)%10;

b=(j%100)/10;

c=j%10;

if(a*a*a+b*b*b+c*c*c==j){

count+=1;

}

j++;

}

System.out.println("水仙花数为:"+count);


04.08_Java语言基础(循环结构do…while语句的格式和基本使用)

A:循环结构do…while语句的格式:

do {
循环体语句;
}while(判断条件语句);

完整格式;
初始化语句;
do {
循环体语句;
控制条件语句;
}while(判断条件语句);


B:执行流程:

a:执行初始化语句

b:执行循环体语句;

c:执行控制条件语句

d:执行判断条件语句,看其返回值是true还是false

如果是true,就继续执行

如果是false,就结束循环

e:回到b继续。

C:案例演示

需求:请在控制台输出数据1-10

int i=1;

do{

System.out.println(i++);

}while(i<=10);


04.09_Java语言基础(循环结构三种循环语句的区别)

A:案例演示

三种循环语句的区别:

do…while循环至少执行一次循环体。

而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。

int j=10;

for(int i=10;i<=9;i++){

System.out.println("i="+i);

}

do{

System.out.println("j="+j);

}while(j<=9);


B:案例演示

for循环和while循环的区别:

A:如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用谁就用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。

for(int i=1;i<9;i++){</li>

<li>

<ul><li>}</li></ul></li>

<li>System.out.println(i);//报错,找不到i,i在for循环结束后被回收


int i=1;</li>

<li>while(i<9){</li>

<li>

<ul><li>}</li></ul></li>

<li>System.out.println(i);//i=1,i为全局变量,要整个程序结束后才被回收


04.10_Java语言基础(循环结构注意事项之死循环)

A:一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。

B:两种最简单的死循环格式

while(true){…}

for(;;){…}

04.11_J
4000
ava语言基础(循环结构循环嵌套输出4行5列的星星)

A:案例演示

需求:请输出一个4行5列的星星(*)图案。

如图:

*

*

*

*

for(int i=1;i<=4;i++){
for(int j=1;j<=5;j++){
System.out.print("*");
}
System.out.println();
}


注意:
System.out.println("*");和System.out.print("*");的区别


* B:结论:

* 外循环控制行数,内循环控制列数

04.12_Java语言基础(循环结构循环嵌套输出正三角形)

A:案例演示

需求:请输出下列的形状

*

**

*

**

*

for(int i=1;i<=5;i++){
for(int j=1;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(i+"*"+j+"="+(i*j)+'\t');

System.out.println('\n');

}


注意:
'\x' x表示任意,\是转义符号,这种做法叫转移字符。

'\t'    tab键的位置
'\r'    回车
'\n'    换行
'\"'
'\''


04.14_Java语言基础(控制跳转语句break语句)

A:break的使用场景

只能在switch和循环中

04.15_Java语言基础(控制跳转语句continue语句)

A:continue的使用场景

只能在循环中

04.16_Java语言基础(控制跳转语句标号)

标号:标记某个循环对其控制

标号组成规则:其实就是合法的标识符

04.17_Java语言基础(控制调整语句练习)

A:练习题

for(int x=1; x<=10; x++) {
if(x%3==0) {
//在此处填写代码
}
System.out.println(“Java基础班”);
}

我想在控制台输出2次:“Java基础班“


for(int x=1; x<=10; x++) {
if(x%3==0) {
//在此处填写代码
break;
}
System.out.println("Java基础班");
}


我想在控制台输出7次:“Java基础班“


for(int x=1; x<=10; x++) {
if(x%3==0) {
//在此处填写代码
continue;//跳过x=3,6,9的循环
}
System.out.println("Java基础班");
}


我想在控制台输出13次:“Java基础班“


for(int x=1; x<=10; x++) {
if(x%3==0) {
//在此处填写代码
System.out.println("Java基础班");//x=3,6,9再输出一次
}
System.out.println("Java基础班");
}


04.18_Java语言基础(控制跳转语句return语句)

A:return的作用

返回

其实它的作用不是结束循环的,而是结束方法的。

B:案例演示

return和break以及continue的区别?

return是结束方法

break是跳出循环

continue是终止本次循环继续下次循环

for(int x=1; x<=10; x++) {

if(x%3==0) {

//在此处填写代码

System.out.println("Java基础班");

return;//结束main方法,输出三次Java基础班

}

System.out.println("Java基础班");

}


04.19_Java语言基础(方法概述和格式说明)

A:为什么要有方法

提高代码的复用性

B:什么是方法

完成特定功能的代码块。

C:方法的格式

修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {

方法体语句;

return 返回值;

}

D:方法的格式说明

修饰符:目前就用 public static。后面我们再详细的讲解其他的修饰符。

返回值类型:就是功能结果的数据类型。

方法名:符合命名规则即可。方便我们的调用。

参数:

实际参数:就是实际参与运算的。

形式参数;就是方法定义上的,用于接收实际参数的。

参数类型:就是参数的数据类型

参数名:就是变量名

方法体语句:就是完成功能的代码。

return:结束方法的。

返回值:就是功能的结果,由return带给调用者。

04.20_Java语言基础(方法之求和案例及其调用)

A:如何写一个方法

1,明确返回值类型

2,明确参数列表

B:案例演示

需求:求两个数据之和的案例

C:方法调用图解

04.21_Java语言基础(方法的注意事项)

A:方法调用(有具体返回值)

a:单独调用,一般来说没有意义,所以不推荐。

b:输出调用,但是不够好。因为我们可能需要针对结果进行进一步的操作。

c:赋值调用,推荐方案。

B:案例演示

a:方法不调用不执行

b:方法与方法是平级关系,不能嵌套定义

c:方法定义的时候参数之间用逗号隔开

d:方法调用的时候不用在传递数据类型

e:如果方法有明确的返回值,一定要有return带回一个值

04.22_Java语言基础(方法的练习)

A:案例演示

需求:键盘录入两个数据,返回两个数中的较大值

import java.util.Scanner;

class Demo22{

public static void main(String[] args){

Scanner sc=new Scanner(System.in);

int num1=sc.nextInt();

int num2=sc.nextInt();

test(num1,num2);

}

public static void test(int a,int b){

System.out.println(a>b?a : b);

}

}


B:案例演示

需求:键盘录入两个数据,比较两个数是否相等

import java.util.Scanner;

class Demo22{

public static void main(String[] args){

Scanner sc=new Scanner(System.in);

int num1=sc.nextInt();

int num2=sc.nextInt();

System.out.println(test(num1,num2));

}

public static boolean test(int a,int b){

return a==b;

}

}


04.23_Java语言基础(方法之输出星形及其调用)

A:案例演示

需求:根据键盘录入的行数和列数,在控制台输出星形

import java.util.Scanner;

class Demo23{

public static void main(String[] args){

Scanner sc=new Scanner(System.in);

int num1=sc.nextInt();

int num2=sc.nextInt();

test(num1,num2);

}

public static void test(int a,int b){

for(int i=1;i<=a;i++){

for(int j=1;j<=b;j++){

System.out.print("*");

}

System.out.println();

}

}

}


B:方法调用:(无返回值,void)

单独调用

输出调用(错误)

赋值调用(错误)

04.24_Java语言基础(方法的练习)

A:案例演示

需求:根据键盘录入的数据输出对应的乘法表

*
import java.util.Scanner;

class Demo24{

public static void main(String[] args){

Scanner sc=new Scanner(System.in);

int num=sc.nextInt();

test(num);

}

public static void test(int a){

for(int i=1;i<=a;i++){

for(int j=1;j<=i;j++){

System.out.print(i+"*"+j+"="+(i*j)+'\t');

}

System.out.println();

}

}

}


04.25_Java语言基础(方法重载概述和基本使用)

A:方法重载概述

求和案例

2个整数

3个整数

4个整数

public static void main(String[] args)

{

test(5,4);

}

public static void test(int a,int b)

{

System.out.println(a>b?a : b);

}


B:方法重载:

在同一个类中,方法名相同,参数列表不同。与返回值类型无关。

参数列表不同:

A:参数个数不同

B:参数类型不同

C:参数的顺序不同(算重载,但是在开发中不用)

04.26_Java语言基础(方法重载练习比较数据是否相等)

A:案例演示

需求:比较两个数据是否相等。

参数类型分别为两个int类型,两个double类型,并在main方法中进行测试

public static void main(String[] args)
{
test(5,4);
test(5.0,4);
}
public static void test(int a,int b)
{
System.out.println(a>b?a : b);
}
public static void test(double a,double b)
{
System.out.println(a>b?a : b);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java c语言