java控制流程(一)
一、scanner:
scanner可以获取用户的输入的信息
scanner的初始化:
//导入的包
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
//创建scanner对象
Scanner scan=new Scanner(System.in);
}
}
使用scanner:
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
//创建scanner对象
Scanner scan=new Scanner(System.in);
//提示请输入
System.out.println("请输入:");
//用来接收输入的值
String str=scan.next();
//打印出刚刚用户输入的值
System.out.println("输入的值为"+str);
}
}
执行以上程序输出的值:
请输入:
hello world
输入的值为hello world
二、顺序结构:
根据代码的编写,从上往下,以此执行
顺序结构的流程:
- 开始----->步骤A----->步骤B----->步骤C----->结束
public calss Test(){
public void medth(){
//顺序执行,根据编写的顺序,从上到下运行
System.out.println("1---步骤A");
System.out.println("2---步骤B");
System.out.println("3---步骤C");
//输出结果为:
//1---步骤A
//2---步骤B
//3---步骤C
}
}
三、选择结构
if(这里只能是表达式 返回值为boolean
if 单选择结构
可以处理单一或者组合条件的情况
语法:
if(选择条件){
满足条件执行的代码
}
实例:
public class Test(){
public void medth(){
//定义一个变量
int a=1;
//a>0是选择条件 如果a>0为true 则执行大括号里的代码
if(a>0){
//满足条件执行的代码体
System.out.println("选择条件为true!")
}
}
}
if-else 双选择结构
可以处理简单的条件分支
语法:
if(选择条件){
满足条件执行的代码
}else{
不满足条件执行的代码
}
实例:
public class Test(){
public void medth(){
//定义一个变量
int a=1;
//a>0是选择条件 如果a>0为true 则执行第一个大括号里的代码
//如果a>0为false 则执行第二个大括号里面的代码
if(a>0){
//满足条件执行的代码体
System.out.println("选择条件为true!")
}else{
//不满足条件的时候执行的代码体
System.out.println("选择条件为false!“);
}
}
}
if-else if-else 多选择结构
多重if选择结构
可以处理复杂的条件分支情况
语法:
if(选择条件1){
满足条件1执行的代码
}else if(选择条件2){
不满足条件1
满足条件2执行的代码
}else{
不满足条件2执行的代码
}
实例
public class Test(){
public void medth(){
//定义一个变量
int a=20;
if(a<18){
//满足a<18执行的代码体
System.out.println("还没有成年!")
}else if(a<30){
//不满足条a<18
//满足a<30的时候执行的代码体
System.out.println("青年!“);
}else{
//以上条件都不满足的时候
System.out.println("青春一去不复返!");
}
}
}
嵌套if选择结构
这种结构一般用于复杂的流程控制中
实例:
public class Test(){
public void medth(){
//比赛用的秒数
int a=10;
//性别
int sex="男";
//运动会短跑60米 用时小于十秒的就按男女生分组
if(a<10){
if(sex.equals("男")){
System.out.println("这是男子赛");
}else if("女"){
System.out.println("这是女子赛");
}
}
}
}
switch
当需要要多重分支的时候,并且条件判断是等值的情况下,使用switch选择结构代替多重if选择结构会更加简单
实例:
public class Test(){
public void medth(){
char letter='A';
switch(letter){
case 'A':
System.out.println("这是A");
break;
case 'B':
System.out.println("这是B");
break;
default :
System.out.println("如果没有A和B 这就是C");
}
}
}
switch语句的参数从jdk1.7之后可以使String类型的
case穿透
- 如果switch的case中不包含break,即使运行了某个case中的代码,仍然会执行其他的case语句
public class Test(){
public void medth(){
char letter='A';
switch(letter){
case 'A':
System.out.println("这是A");
case 'B':
System.out.println("这是B");
default :
System.out.println("如果没有A和B 这就是C");
}
}
}
以上的代码执行结果为:
可以看出将所有的case语句全部输出了
这是A
这是B
如果没有A和B 这就是C
break
如果在case语句后面少加了break关键字。程序从该case分支继续执行下一个分支,知道遇见break后或执行完成最后一个分支,switch语句执行结束(如上面的实例代码)
break的作用就是跳出switch语句,如果执行的判断式中有break就,则执行完case语句就跳出switch选择结构
default
default的运用,是当switch语句里,所有的case语句都不满足条件时,则执行default语句
java控制流程(一)的更多相关文章
- Java 控制流程 之 循环语句
循环:循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复 执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一 ...
- 五、Java控制流程
Java流程控制* 用户交互Scanner.Scanner进阶使用 用户交互Scanner 之前我们学习的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获 ...
- JAVA控制流程
Java代码有三种执行结构流程,顺序结构.分支结构.循环结构 顺序结构 顺序结构是最简单的代码执行结构,从代码开始逐步执行每一句代码到结束 public class C { public static ...
- java控制流程(二)
一.循环结构 有一天你的女朋友让你写一百遍我爱你,你是要一行一行的手写出来,还是利用编程的循环结构写出来? while 语法: 表达式返回的为boolean值 while(表达式){ 需要循环的语句 ...
- Java的流程控制和C++的异同
Java的流程控制和C++基本相似 现将不同的地方总结一下,以便快速掌握. Java的特殊流程控制的特殊部分: 1.顺序结构 -- 没有区别 2.分之结构 -- 没有区别 3.循环结构 1> ...
- 【JAVA零基础入门系列】Day8 Java的控制流程
什么是控制流程?简单来说就是控制程序运行逻辑的,因为程序一般而言不会直接一步运行到底,而是需要加上一些判断,一些循环等等.举个栗子,就好比你准备出门买个苹果,把这个过程当成程序的话,可能需要先判断一下 ...
- Java基础语法<四> 控制流程
笔记整理 来源于<Java核心技术卷 I > <Java编程思想> if while do while for switch case case标签可以是: 类型为ch ...
- 第三节:带你详解Java的操作符,控制流程以及数组
前言 大家好,给大家带来带你详解Java的操作符,控制流程以及数组的概述,希望你们喜欢 操作符 算数操作符 一般的 +,-,*,/,还有两个自增 自减 ,以及一个取模 % 操作符. 这里的操作算法,一 ...
- Java入门(五):控制流程
在Java中,使用条件语句和循环结构确定控制流程,在本文中,主要包括块作用域.条件语句.循环结构.中断循环这四部分. 一.块作用域 块,也叫复合语句,是指由一对大括号括起来的若干条Java语句.块决定 ...
随机推荐
- Coders' Legacy 2020 题解
目录 Chef vs Doof Doof on Cartesian Doof fires Brackets Jeremy gets a gift Unique Substring Perry lear ...
- 记一次生产环境tomcat线程数打满情况分析
前言 旨在分享工作中遇到的各种问题及解决思路与方案,与大家一起学习. -- 学无止境, 加油 ! Just do it ! 问题描述 运行环境描述 tomcat-8.5 单节点(该应用集群20个节点) ...
- vue.extend和vue.component的区别
vue.extend 使用基础 Vue 构造器函数,通过原型继承,(返回)创建一个"子类"(构造器).参数是一个包含组件选项的对象. const Sub = function Vu ...
- 【Spring】看了这篇Spring事务原理,我才知道我对Spring事务的误解有多深!
写在前面 有很多小伙伴们留言说,冰河,你能不能写一篇关于Spring事务的文章呢?我:可以啊,安排上了!那还等什么呢?走起啊!! 事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,没有 ...
- 顶级技术盛会KubeCon 2020,网易轻舟布道多云环境云原生应用交付
在日前的KubeCon 2020中国线上峰会上,VMware中国研发中心架构师.Harbor项目创始人和维护者张海宁,和网易数帆轻舟事业部架构师.Harbor维护者裴明明,共同分享了如何在多云和多集群 ...
- java多线程:线程同步synchronized(不同步的问题、队列与锁),死锁的产生和解决
0.不同步的问题 并发的线程不安全问题: 多个线程同时操作同一个对象,如果控制不好,就会产生问题,叫做线程不安全. 我们来看三个比较经典的案例来说明线程不安全的问题. 0.1 订票问题 例如前面说过的 ...
- 最新通达OA-getshell 漏洞复现
0x00 通达简介 通达OA国内常用的办公系统,使用群体,大小公司都可以,其此次安全更新修复的高危漏洞为任意用户登录漏洞.攻击者在远程且未经授权的情况下,通过利用此漏洞,可以直接以任意用户身份登录到系 ...
- Spark QuantileDiscretizer 分位数离散器
1.概念 接收具有连续特征的列,并输出具有合并分类特征的列.按分位数,对给出的数据列进行离散化分箱处理. 和Bucketizer(分箱处理)一样也是:将连续数值特征转换为离散类别特征.实际上Class ...
- 在vue中使用echarts报错Cannot read property getAttribute of null
报错信息如下: 报错代码: mounted() { // ... this.drwaCharts() // drawCharts方法为自己定义的包含渲染 echarts 图表的方法 // ...} 之 ...
- 自我介绍网页填写表格PHP,JavaScript,html,css代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...