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);
}
}

JAVA自学笔记04的更多相关文章

  1. JS自学笔记04

    JS自学笔记04 arguments[索引] 实参的值 1.对象 1)创建对象 ①调用系统的构造函数创建对象 var obj=new Object(); //添加属性.对象.名字=值; obj.nam ...

  2. JAVA自学笔记09

    JAVA自学笔记09 1.子类的方法会把父类的同名方法覆盖(重写) 2.final: 1)可修饰类.方法.变量 2)修饰类时:此时该类变为最终类,它将无法成为父类而被继承 3)修饰方法时:该方法将无法 ...

  3. JAVA自学笔记05

    JAVA自学笔记05 1.方法 1)方法就是完成特定功能的代码块,类似C语言中的函数. 2)格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,-){ 函数体; return ...

  4. JAVA自学笔记06

    JAVA自学笔记06 1.二维数组 1)格式: ①数据类型[][]数组名 = new 数据类型[m][n]; 或 数据类型[]数组名[]=new 数据类型[m][n]; m表示这个二维数组有多少个一维 ...

  5. JAVA自学笔记07

    JAVA自学笔记07 1.构造方法 1) 例如:Student s = new Student();//构造方法 System.out.println(s);// Student@e5bbd6 2)功 ...

  6. JAVA自学笔记10

    JAVA自学笔记10 1.形式参数与返回值 1)类名作为形式参数(基本类型.引用类型) 作形参必须是类的对象 2)抽象类名作形参 需要该抽象类的子类对象,通过多态实现 3)接口名为形参 需要的是该接口 ...

  7. JAVA自学笔记13

    JAVA自学笔记13 1.StringBuffer类 1)线程安全的可变字符序列 线程安全(即同步) 2)StringBuffer与String的区别:一个可变一个不可变 3)构造方法: ①publi ...

  8. JAVA自学笔记11

    JAVA自学笔记11 1:Eclipse的安装 2:用Eclipse写一个HelloWorld案例,最终在控制台输出你的名字 A:创建项目 B:在src目录下创建包.cn.itcast C:在cn.i ...

  9. JAVA自学笔记14

    JAVA自学笔记14 1.正则表达式 1)是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串.其实就是一种规则.有自己的特殊应用 2)组成规则: 规则字符在java.util.rege ...

随机推荐

  1. Ncurses - Panel

    当你需要创建许多窗口时,你很快就会发现它们会变得难以管理.Panel library提供了很好的解决方案. Panel 实际上是一个窗口,通过容器 - 栈 来管理,栈顶的 panel 是完全可见的,其 ...

  2. java内嵌jetty服务器

    有的时候需要将一个简单的功能封装为服务,相比python使用flask.web.py的简洁,使用java-web显得太重量级,幸好,我们可以直接在java项目中使用jetty来搭建简易服务 1.pom ...

  3. loadrunner下的putty和plink

    loadrunner中是有集成plink和putty的,难怪可以通过监控机监控linux上的负载情况呢,可以通过这个命令来进行访问:C:\Program Files\Mercury\LoadRunne ...

  4. mariadb-半同步复制

    半同步复制: 使用插件 对于从节点,有一部分为同步复制,当主节点复制完从节点后才向客户返回ok,同步超时后自动降级为异步 有一部分为异步复制 这样为了与主节点冗余 基于主从的模式上搭建 半同步复制: ...

  5. TopCoder SRM502 Div1 1000 动态规划

    原文链接https://www.cnblogs.com/zhouzhendong/p/SRM502-1000.html SRM502 Div1 1000 题意 从 [0,n-1] 中选择 k 个不同的 ...

  6. HUE的自动化安装部署

    HUE=Hadoop User Experience(Hadoop用户体验),直白来说就一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera ...

  7. Codeforces 992C Nastya and a Wardrobe (思维)

    <题目链接> 题目大意: 你开始有X个裙子 你有K+1次增长机会 前K次会100%的增长一倍 但是增长后有50%的机会会减少一个 给你X,K(0<=X,K<=1e18), 问你 ...

  8. redsi搭建主从和多主多从

  9. 如何基于asp.net core的Identity框架在mysql上作身份验证处理

    首先了解这个概念,我一开始也是理解和掌握基本的概念,再去做程序的开发.Identity框架是微软自己提供,基于.net core平台,可拓展.轻量 级.面向多个数据库的身份验证框架.IdentityS ...

  10. 爆炸销毁动画组件Explosions

    爆炸销毁动画组件Explosions   爆炸销毁动画通常应用于界面元素的移除.使用该动画效果可以将移除操作表现的更为直观生动.Explosions组件是一款专门实现爆炸销动画效果的组件,它可以展示界 ...