当前位置: 首页 > news >正文

9、Java语句

语句:
条件语句-根据不同的条件执行不同的语句。
if
if .. else
if .. else if
if .. else if .. else if ..else
只有一句需要执行的语句时,可以省略{}

TestIF.java
public class TestIF {
public static void main (String[] args) {
int i = 20;
if (i < 20) {
System.out.println("<20");
System.out.println("<20");
} else if (i < 40) {
System.out.println("<40");
} else if (i < 60) {
System.out.println("<60");
}else
System.out.println(">=60"); //只有一句需要执行的语句时,可以省略{}
}
}
建议即使有一句语句时也是用大括号

switch
循环语句-重复执行某些动作
for循环语句
for循环语句为如下形式:
for(表达式1;表达式2;表达式3){ 语句;... ; }
执行过程
首先计算表达式1,接着执行表达式2,若表达式2的值为true,则执行语句,接着计算表达式3,再判断表达式2的值;依次重复下去,直到表达式2的值为false
for语句中三个表达式都可以省略

TestFor.java
public class TestFor {
public static void main (String[] args) {
long result = 0;
long f = 1;
for (int i = 1; i <= 10; i++) {
f = f * i;
result += f;
}
System.out.println("result=" +result);
}
}
C:\Users\root\Desktop>javac TestFor.java

C:\Users\root\Desktop>java TestFor
result=4037913

 

OddSum.java
public class OddSum {
  public static void main (String[] args) {
    long result = 0;
    for (int i=1; i<=99; i+=2) {
      result += i;
    }
    System.out.println("result=" + result);
  }
}
C:\Users\root\Desktop>javac OddSum.java

C:\Users\root\Desktop>java OddSum
result=2500

 

while 语句为如下形式:
while(逻辑表达式){语句; ... ;}
执行过程
先判断逻辑表达式的值,若=true则执行其后面的语句,然后再判断条件,知道条件不成立
      语句
表达式-》       -》结束
do .. while语句形式如下:
do{语句;... ;}while(逻辑表达式);
执行过程
先执行语句,再判断逻辑表达式的值,若为true,再执行语句,否则结束循环。
        表达式
语句-》          -》结束

TestWhile.java
public class TestWhile {
  public static void main (String[] args) {
    int i = 0;
    while (i<10) {
      System.out.println(i);
      i++;
    } {
      System.out.println("-----------------------------------");
    }
    i = 0;
    do {
      System.out.println(i);
      i++;
    } while (i<10);
  }
}

C:\Users\root\Desktop>javac TestWhile.java

C:\Users\root\Desktop>java TestWhile
0
1
2
3
4
5
6
7
8
9
-----------------------------------
0
1
2
3
4
5
6
7
8
9

break & continue 语句
break语句用于终止某个语句块的执行,用在循环语句体中,可以强制退出循环;例如:

TestBreak.java
public class TestBreak {
  public static void main (String[] args) {
    int stop = 4;
    for(int i = 1; i < 10; i++) {
      //if (i == stop) break;
      System.out.println("i=" + i);
    }
  }
}
C:\Users\root\Desktop>javac TestBreak.java

C:\Users\root\Desktop>java TestBreak
i=1
i=2
i=3
TestBreak.java
public class TestBreak {
  public static void main (String[] args) {
    int skip = 4;
    for(int i = 1; i < 10; i++) {
      if (i == skit) continue;
      System.out.println("i=" + i);
    }
  }
}
C:\Users\root\Desktop>javac TestBreak.java

C:\Users\root\Desktop>java TestBreak
i=1
i=2
i=3
i=5
i=6
i=7
i=8
i=9
100以内前5个可以被3整除的数
TestWhile2.java
public class TestWhile2 {
  public static void main(String[] args) {
    int num = 0, i = 1;
    while (i <= 100) {
      if (i % 3 == 0) {
        System.out.println(i + " ");
        num++;
      }
      if (num == 5) {
        break;
      }
      i++;
    }
  }
}

C:\Users\root\Desktop>javac TestWhile2.java

C:\Users\root\Desktop>java TestWhile2
3
6
9
12
15
101到200之间的质数
TestContinue.java
public class TestContinue {
  public static void main (String[] args) {
    for (int i = 101; i < 200; i +=2) {
      boolean f = true;
      for (int j = 2; j < i; j++) {
        if (i % j == 0) {
          f = false;
          break;
        }
      }
      if (!f) {continue;}
      System.out.println(" " + i);
    }
  }
}

C:\Users\root\Desktop>javac TestContinue.java

C:\Users\root\Desktop>java TestContinue
 101
 103
 107
 109
 113
 127
 131
 137
 139
 149
 151
 157
 163
 167
 173
 179
 181
 191
 193
 197
 199

switch() {
case XX:
...
case XX:
...
default:
...
}
小心case穿透,推荐使用break语句//不加break会穿透
多个case可以合并到一起
case 8: //等于8或者10都会打印B
case 10:
System.out.println("B");
break;
default可以省略,但不推荐省略
java中switch语句只能探测int类型值//小括号里面的值

TestSwitch .java
public class TestSwitch {
  public static void main (String[] args) {
    int i = 18;
    switch (i) {
      case 8:
        System.out.println("A");
        break;
      case 10:
        System.out.println("B");
        break;
      case 18:
        System.out.println("C");
        break;
      default:
        System.out.println("error");
    }
  }
}
C:\Users\root\Desktop>javac TestSwitch.java

C:\Users\root\Desktop>java TestSwitch
C

转载于:https://www.cnblogs.com/hlc-123/p/11020746.html

相关文章:

  • [转载]SQL Server查找包含某关键字的存储过程3种方法
  • Android 项目优化(二):启动页面优化
  • 微信小程序常用样式汇总
  • 虚拟机导入虚拟电脑 环境变量丢失
  • mysql优化:覆盖索引(延迟关联)
  • 编译原理--02 自顶向下、自底向上的LR分析复习(清华大学出版社第3版)
  • webservice服务器借用cxf工具开发
  • 软件测试2019:第八次作业—— 缺陷管理(含缺陷管理工具的配置实验)
  • 实验6 流类库与I/O
  • Python day 44 :数据库的存储引擎/索引/权限管理
  • vsphere6.7-虚拟机与ESXI时间同步
  • 结合案例深入解析迭代器模式
  • laravel5.5入门-安装和认证
  • 没事干 回忆下快排
  • 并发
  • 2017届校招提前批面试回顾
  • If…else
  • Java面向对象及其三大特征
  • MySQL数据库运维之数据恢复
  • Sass 快速入门教程
  • socket.io+express实现聊天室的思考(三)
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • XML已死 ?
  • 简单数学运算程序(不定期更新)
  • 京东美团研发面经
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 免费小说阅读小程序
  • 你真的知道 == 和 equals 的区别吗?
  • 前嗅ForeSpider教程:创建模板
  • 深入浅出Node.js
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 大数据全解:定义、价值及挑战
  • 第二十章:异步和文件I/O.(二十三)
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • ​HTTP与HTTPS:网络通信的安全卫士
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • (09)Hive——CTE 公共表达式
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (3)选择元素——(17)练习(Exercises)
  • (C语言)二分查找 超详细
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (SpringBoot)第七章:SpringBoot日志文件
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (剑指Offer)面试题34:丑数
  • (六)c52学习之旅-独立按键
  • (三)模仿学习-Action数据的模仿
  • (小白学Java)Java简介和基本配置
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转)Mysql的优化设置
  • (转)树状数组
  • ***通过什么方式***网吧
  • *setTimeout实现text输入在用户停顿时才调用事件!*