JAVA自学笔记04

时间:2023-08-17 19:53:56

JAVA自学笔记04

1、switch语句

1)格式:switch(表达式){

case 值1:

语句体1;

break;

case 值2:

语句体2;

break;



default:

语句体n+1

break;

}

2)注意事项:

表达式结果类型:byte/short/int/char/枚举/string

case 后只能跟常量表达式而不能接变量,不能接相同的常量表达式

default可以在任意位置,但它总是最后执行的

switch 语句是以break 语句为结束而不是default

@例题1:模拟做单项选择题。根据选择给出对应的答案

import java.util.Scanner;
class Test{
public static void main(String args[]){
Scanner sc = new Scanner(System.in); int x = sc.nextInt();
char ch = (char)x;
switch(x){
case 'a':
System.out.println('a');
break;
case 'b':
System.out.println('b');
break;
case 'c':
System.out.println('c');
break;
case 'd':
System.out.println('d');
break;
default:
System.out.println("WRONG");
}
}
}

@例题2:键盘录入字符串,根据给定的字符串,来输出你选择的字符串是什么

(键盘导入字符串的方法是:String s = sc.nextLine();)

import java.util.Scanner;
class Test{
public static void main(String args[]){
Scanner sc = new Scanner(System.in); String s = sc.nextLine();
switch(s){
case "Hello":
System.out.println("Hello");
break;
case "Bye":
System.out.println("Bye");
break;
}
}
}

3、循环结构

1)for 循环结构:

格式:for(初始化语句;判断语句;控制条件语句){

语句体

}

其中初始化语句只执行一次,可缺省

判断条件语句必须是布尔类型

循环体语句如果是一条语句可以不加大括号

@例题1:在控制台输出10次HelloWorld

class Test{
public static void main(String args[]){
int x = 1;
for(;x<=10;x++){
System.out.println("HelloWorld");
}
}
}

@例题2:在控制台输出数据1~10

class Test{
public static void main(String args[]){
int x = 1;
for(;x<=10;x++){
System.out.println(x);
}
}
}

@例题3:求出1~10的和

class Test{
public static void main(String args[]){
int sum = 0;
int x = 10;
for(;x>=0;x--){
sum+=x;
}
System.out.println(sum);
}
}

@例题3:求出1~100的偶数和

class Test{
public static void main(String args[]){
int sum = 0;
int x = 100;
for(;x>=0;x=x-=2){
sum+=x;
}
System.out.println(sum);
}
}

@例题4:在控制台输出所有三位的水仙花数,并统计其数目

class Test{
public static void main(String args[]){
int a=0,b=0,c=0;
int temp;
int sum;
int i = 0; for(;a<=9;a++){
for(;b<=9;b++){
for(;c<=9;c++){
sum=a*100+b*10+c;
temp=a*a*a+b*b*b+c*c*c;
if(sum==temp){
System.out.println(sum);
i++;
}
}
c=0;
}
b=0;
}
System.out.println("共有"+i+"个三位的水仙花数");
}
}

@例题5:统计1~1000之间有多少个数:

同时满足:对3整除余2,对5整除余3。对7整除余2

class Test{
public static void main(String args[]){
int x=0;
int i=0;
for(;x<=1000;x++){
if(x%3==2&&x%5==3&&x%7==2){
System.out.println(x);
i++;
} }
System.out.println("共"+i+"个");
}
}

2)while循环结构

格式:初始化语句;

while(判断条件语句){

循环体语句;

控制条件语句;

}

与for的使用区别:

for循环适合针对一个范围判断操作,控制条件语句的那个变量在for循环结束后不能再使用但在while内可以,while适用于判断次数不明的操作。

@例题6:我国最高山峰是珠穆朗玛峰:8848m,现有一张足够大的纸,厚0.01m。请问:对折多少次可以超过珠穆朗玛峰的高度

class Test{
public static void main(String args[]){
double a=0.0001;
double height=8848.0;
int i = 0; for(;a<height;){
i++;
a=a*2;
}
System.out.println("共"+i+"次");
}
}

3)do…while循环

格式:初始化语句;

do{

循环体语句;

控制条件语句;

}while(条件判断语句);

@例题7:输出四行五列的*图案

class Test{
public static void main(String args[]){
int x=1,y=1;
for(;y<=4;y++){ for(;x<=5;x++){
System.out.print("*");//不换行的屏幕输出
}
x=1;
System.out.print('\n');
}
}
}

@例题8:屏幕输出高为6底为6的直角三角形

class Test{
public static void main(String args[]){
int x=1;
int y=x;
for(;x<=6;x++){
for(;y<=x;y++){
System.out.print("*");
}
y=1;
System.out.println('\n');
}
}
}

@例题9:屏幕输出九九乘法表

class Test{
public static void main(String args[]){
int x=1;
int y=x; for(;x<=9;x++){
for(;y<=x;y++){
int temp=x*y;
System.out.print(x+"*"+y+"="+temp+" ");
}
y=1;
System.out.print('\n');
}
}
}

4、break语句

1)使用在选择结构switch或循环语句中,离开使用场景是没有意义的。

2)跳出多层循环:带标签的语句:格式:

标签名:语句

break 标签名;

5、continue 语句

1)使用在循环结构中

2)跳出一次循环,执行下一次循环

6、return语句

常用于结束一个方法,即退出一个方法

@例题10:小芳存钱问题:小芳的妈妈每天都会给小芳2.5元钱,她都会存起来,但如果到了天数为5的倍数的时候,她会花掉6元,问小芳再低几天可以村存够100元钱?

class Test{
public static void main(String args[]){
double x=0;
int i=0;
for(;;){i++;
x+=2.5;
if(i%5==0){
x-=6;
}
if(x>=100){
break;
}
}
System.out.println(i);
}
}