- 前言
- 1.键盘录入数据的方法
- 2.流程控制语句(重点)
- 1)顺序结构
- 2)选择结构语句
- a) 选择结构语句之if
- b) 选择结构语句之switch语句
- 3)循环结构语句
- a) 循环结构语句之for
- b) 循环结构语句之while
- for循环与while循环的区别(面试题)
- c) 循环结构语句之do_while
- d) 死循环
- 3.for循环嵌套(理解)
- 4.跳转控制语句(重点)---区别和应用场景
前言
本文涉及内容:java中键盘录入数据的操作方法、流程控制语句(顺序结构/选择结构语句/循环结构语句)、for循环嵌套和跳转控制语句等。
提示:以下是本篇文章正文内容,下面案例可供参考
1.键盘录入数据的方法操作过程:
1)导包
import java.util.Scanner ;
2)创建键盘录入对象
Scanner 对象名 = new Scanner(Stytem.in) ;
3)温馨提示:
System.out.println("请您输入相关数据:") ;
4)录入相关数据:
int 变量 = 对象名.nextInt() ; //录入int 类型数据
String 变量 = 对象名.nextLine() ; //录入字符型数据
2.流程控制语句(重点)
1)顺序结构
代码是由上而下一次加载的
2)选择结构语句 a) 选择结构语句之if针对if语句来说,注意事项:
if后面有左大括号的地方不能有分号;有分号;的地方不能有{ 左大括号
在方法定义中书写—{} 局部代码块,限定局部变量的生命周期,它的访问范围就是{}范围内
//if语句格式1
if(条件表达式){
语句 ;
}
//if语句格式2
if(表达式){
语句一 ;
}else{
语句二 ;
}
//if语句格式3
if语句的格式3
if(表达式1){
语句1;
}else if(表达式2){
语句2;
}else if(表达式3){
语句3;
...
...
}else{
语句n ;
}
if语句格式2 和 三元运算符的区别
if…else是控制流程语句,范围广,不仅可以操作具体数据值,还可以操作语句
三元运算符是运算符的一种,只能操作具体的数据值,不能直接在里面嵌套使用
b) 选择结构语句之switch语句格式:
switch(表达式){
case 值1:
语句1;
break ;
case 值2:
语句2;
break ;
...
...
...
default:
语句n;
break ;
}
执行流程:
1)判断表达式的值和case值1进行匹配,
如果匹配成功,执行语句1,break结束
2)如果case值1不匹配,继续和case后面的值2进行比较,如果匹配,语句2执行,break结束;
...
3)如果上面的case的值都和switch中表达式的结果不匹配的,那么最终就执行default中的语句n,然后程序默认执行到末尾结束了,break结束;
switch语句中的注意事项:
1)case 语句后面的值只能是常量
2)case 语句中的break必须带上,否则会造成:case穿透
由于某个case已经匹配了,此时如果没有break,那么就继续往下 面中case的语句进行穿透,依次执行,遇见有case中有break的,那么switch结束!
3)switch的结束条件
a)语句break结束
b)程序默认执行到末尾!
4)default语句可以在语句中的任何位置,不影响程序的执行流程
default的执行,当前case中没有匹配的话,执行default
class ForDemo{
public static void main(String[] args){
//1.for循环的简单应用(执行流程)
for(int i = 1 ; i <= 5 ; i++ ){
System.out.println("for循环的简单应用!") ;
}
System.out.println("-----------------------------") ;
//2.for循环的简单应用(求和思想)
//定义最终结果变量
int sum = 0 ;//变量必须初始化
//使用for循环,获取1~5之间的数据
for(int j = 1 ; j <= 5 ; j++){
//j = 1,2,3,4,5
sum += j ; // sum = sum + j
}
System.out.println("1~5之间的数据和是:"+sum) ;
System.out.println("----------------------------") ;
//求1~100之间的和
//定义最终结果变量
int sum2 = 0 ;
for(int x = 1 ; x<=100 ; x++){
sum2 += x ;
}
System.out.println("1~100的数据和是:"+sum2) ;
System.out.println("----------------------------") ;
//求1~100之间的奇数和
int sum3 = 0 ;
for(int y = 1 ;y<=100 ; y++){
if((y % 2) != 0){
//奇数
//求和
sum3 += y ;
}
}
System.out.println("1~100的奇数和是:"+sum3) ;
System.out.println("----------------------------") ;
//求5的阶乘
//先定义一个结果变量,0乘以任何数都得0
//所以初始化为 1;
int jc = 1 ;
for(int z = 2 ; z<=5 ; z++){//1*1=1,x的变量从2开始也行
//获取到1-5之间的数据
jc *= z ; //jc = jc * z ;
}
System.out.println("5的阶乘是:"+jc) ;
System.out.println("----------------------------") ;
System.out.println("水仙花数如下:") ;
for(int m = 100 ; m <=999 ; m ++){
//获取到x的数据,需要确定每个位上的数据本身
//定义三个变量 ge,shi,bai
int ge = m % 10 ; //获取个位上的数据
int shi = m /10 % 10 ; //获取十位上的数据
int bai = m /10 /10 % 10 ;//获取百位上的数据
//满足条件
if(m == (ge*ge*ge+shi*shi*shi+bai*bai*bai)){
System.out.println(m) ;
}
}
}
}
b) 循环结构语句之while
class WhileDemo{
public static void main(String[] args){
//基本格式
int x = 1 ;
while(x<=5){
System.out.println("while语句循环格式练习!") ;
x++ ;
}
//练习1 1~100之间的和
System.out.println("-----------------") ;
int sum = 0 ; //定义一个最终结果变量
int y = 1;
while(y<=100){
sum += y ;
y++ ;
}
System.out.println("1~100的和是"+sum) ;
System.out.println("-----------------") ;
//练习:1~100间的偶数和
int sum2 = 0 ; //定义最终结果变量
int z = 1;
while(z<=100){
//if语句的判断流程:如果满足z对2取余等于0,则输出sum2 += 0
if(z % 2 == 0){
sum2 += z ;
}
z++ ;
}
System.out.println("1~100的偶数和是"+sum2) ;
System.out.println("-----------------") ;
//练习 5的阶乘
int jc = 1;//0成任何数都是0,这里对最终变量的初始化为1
int i = 1 ;//这里也可以从2开始,因为1乘以任何数都是任何数
while(i<=5){
jc *= i ;
i++ ;
}
System.out.println("5的阶乘是"+jc) ;
System.out.println("-----------------") ;
//求出所有水仙花数并统计水仙花数的个数
//水仙花数:for循环中看看
int count = 0; //定义统计变量
int j = 100 ;//水仙花数是个三位数,所以从100开始
while(j<=999){
//确定每个位的数据本身
int ge = j % 10 ;
int shi = j /10 % 10 ;
int bai = j /10 / 10 % 10 ;
if(j == (ge*ge*ge + shi*shi*shi + bai*bai*bai)){
count ++ ;
System.out.println("第"+count+"次的水仙花数是:"+j) ;
}
j++ ;
}
System.out.println("水仙花数共有:"+count+"个") ;
}
}
for循环与while循环的区别(面试题)
class WhileOrFor{
public static void main(String[] args){
//分别使用for和while来实现5次"java学习入门!"
for(int i=1 ;i<=5 ; i++){
System.out.println("java学习入门!") ;
}
//System.out.println(x) ; //找不到符号 x,因为变量x已经被释放掉
System.out.println("---------------------") ;
int y =1 ;
while(y<=5){
System.out.println("java学习入门!") ;
y++ ;
}
System.out.println(y) ;//while就可以访问这个变量
}
}
c) 循环结构语句之do_while
class DoWhileDemo{
public static void main(String[] args){
//在控制台输出5次"我爱学习java!"
int i = 1 ;
do{
System.out.println("我爱学习java!") ;
i ++ ;
}while(i<=5) ;
System.out.println("------下面是至少执行一次的语句--------") ;
int x = 6 ; //初始化语句
do{
System.out.println("我爱学习java!") ;
x ++ ;
}while(x<=5) ;
}
}
d) 死循环
//while循环的死循环格式
class DieWhileForDemo{
public static void main(String[] args){
//for循环的死循环格式
for(;;){
System.out.println("长风破浪会有时,直挂云帆济沧海!") ;
}
}
}
3.for循环嵌套(理解)
class ForForDemo{
public static void main(String[] args){
//练习:在控制台输出四行五列的*
for(int i = 1; i<=4; i++){ //外层控制行数:4行
//for(int i=0; i<4; i++)
for(int j=1; j<=5; j++){//内层控制列数:5列
//for(int j=0; j<=4; j++)
System.out.print("*") ;//这里没有ln,ln表示的是换行,这里我们不需要换行
}
System.out.println() ;//输出空行
}
//如果需要列数变换,则让输入的列数的值,小于输入的行数的值就好
//列数在变化
System.out.println("-----------------------") ;
for(int x=1;x<=9;x++){
for(int y=1;y<=x;y++){
System.out.print("*") ;
}
System.out.println() ;
}
System.out.println("-----------------------") ;
//类比:输出9*9乘法表
for(int m=1; m<=9 ;m++){//行数的变化
for(int n=1; n<=m; n++){//列数的变换
int sum = n * m ;
System.out.print(n+"*"+m+"="+sum+"t") ;
}
System.out.println() ;
}
}
}
//这是第七天的内容
4.跳转控制语句(重点)—区别和应用场景
class SkipDemo{
public static void main(String[] args){
//跳转语句的不同
System.out.println("程序开始!") ;
for(int x=1 ; x<=10 ; x++){
if(x == 5 ){
System.out.println("条件成立了,进入if条件语句了") ;
//break ;//当x=3的时候成立,中断循环了,结束了!
//continue ;//当x=3时,成立,立即进入下一次循环,
//return ; //很少单独使用,一般是结束方法时去使用!
}
System.out.println(x) ;
}
System.out.println("程序结束了!!!") ;
System.out.println("--------------------") ;
for(int i=1 ; i<=10 ; i++){
if(i == 3){
//break ; //输出两次
continue ;//输出了9次
}
System.out.println(i) ; //为了方便查看,所以写了这条
System.out.println("我爱学java!") ;
}
}
}
上图代码中:break的运行结果
上图代码中:continue的运行结果
上图代码中:return的运行结果



