首页 > 其他分享 >流程控制和方法

流程控制和方法

时间:2024-02-21 13:57:04浏览次数:23  
标签:case 控制 default 流程 next break 循环 方法

流程控制和方法

1.1 用户交互Scanner

  • 基本语法
Scanner s=new Scanner(System.in);
  • 通过Scanner类的next()与nextLine()方法获取用户的字符串,读取前一般用hasNext()与hasNextLine()判断是否还有输入的数据
if(s.hasNext()){
    String str=s.next();
    System.out.println("输入的内容为:"+str);
}
s.close();
  • next()

    1. 一定要读取到有效字符才可以结束输入。
    2. 对输入有效字符之前遇到的空白,next()方法会将其去掉。
    3. 只有输入有效字符后才将其后面输入的空白作为结束符。
    4. next()不能得到带有空格的字符串。
  • nextLine()

    1. 以Enter作为结束符
    2. 可以获取空白

1.2 流程控制

1)顺序结构:顺序结构中的代码会按照顺序一行一行的执行所有的代码语句

2)分支结构

a.单分支结构:if (判断条件){}

b.多分支结构:if(判断条件){}else{}	

c.嵌套分支结构:多个if else

3)选择结构:switch(变量名){ case 值1:操作;break;default:保底选项;}

a.变量支持的类型:byte,short,char,int,String,enum以及与之对应的包装类

b.如果配置了default默认选项,并且没有任何的case匹配到,则会执行default

c.case的个数 是否加break 是否加default根据业务需求决定

d.小括号中的变量的类型要与case后value的类型一致

e.执行顺序:先拿着变量的值,依次与每个case后的值做比较,如果相等,就执行case后的语句,若这个case后没有break,就会继续向下执行下一个case,如果一直没有遇到break,就会发生穿透现象,包括default

4)循环结构

a.for循环 for(开始条件;循环条件;更改条件){} (如果条件满足,则执行循环体内的内容)

b.嵌套for循环:外层循环控制的是轮数,内层循环控制的是每一轮中执行的次数;对于图形而言外层控制的是行数,内层控制的是列数

c.高效循环 for(遍历的元素类型 遍历的元素名:要遍历的数组/集合名){循环体}

d.while循环:while(判断条件){如果符合判断条件,继续循环}

e.do-while循环:一定会执行一次,然后再判断,如果满足条件,则继续循环 do{循环体}while(判断条件);

1.3 break&continue

- break:强行退出循环
- continue:终止该次循环,进行下次循环。

1.4 方法

1)格式:修饰符 返回类型 方法名(参数列表){方法体}

2)一般通过方法名+参数列表确定调用的方法

3)方法的重载:同名不同参

4)方法的传值:如果参数类型是基本类型,传入的是实际的字面值,如果是引用类型,传入的是地址值

a.形参:形式意义上的参数,如方法参数列表的参数名

b.实参:实际意义上的参数,如局部变量,成员变量等

5)方法的重写:子类继承父类,在不改变父类代码的情况下,实现功能的修改与拓展,遵循规则:两同 两小 一大

a.一大:子类方法的修饰符权限>=父类方法的修饰符权限

b.两同:方法名与参数列表与父类保持一致

c.两小:子类的返回值类型<=父类的返回值类型 子类方法抛出的异常类型<=父类方法抛出的异常类型

6)四种权限修饰符

| 权限修饰符 |      |      |      |        |
| ---------- | ---- | ---- | ---- | ------ |
| 修饰符     | 同类 | 同包 | 子类 | 不同包 |
| public     | YES  | YES  | YES  | YES    |
| protected  | YES  | YES  | YES  | NO     |
| default    | YES  | YES  | NO   | NO     |
| private    | YES  | NO   | NO   | NO     |

标签:case,控制,default,流程,next,break,循环,方法
From: https://www.cnblogs.com/cqwes123/p/18025043

相关文章

  • 全流程点云机器学习(二)使用PaddlePaddle进行PointNet的机器学习训练和评估
    前言这不是高支模项目需要嘛,他们用传统算法切那个横杆竖杆流程复杂耗时很长,所以想能不能用机器学习完成这些工作,所以我就来整这个工作了。基于上文的数据集切分,现在来对切分好的数据来进行正式的训练。本系列文章所用的核心骨干网络代码主要来自点云处理:实现PointNet点云分割......
  • django分页后过滤数据,要进行补全数据的方法
    项目开发中遇到一个问题:当分页后还要进行数据处理,可能导致原本分页返回的数据不足,那么需要从另外一页进行数据补全(也要数据进行过滤)。自己写了一个小的组件:defdata_paging(queryset,page,limit,deal_func=None,*args,**kwargs):#创建分页器对象paginator=......
  • JavaSE的第七步 —— 开发者工具、控制语句、if单分支,if-esle双分支,if-else if-else多
    一、开发者工具工欲善其事,必先利其器。作为一个学习Java的小白,一个好的工具对我们的开发来说可以说是事半功倍。在网上看了很多大神们都推荐的使用IDEA开发工具,前30天可以免费使用。而在30天后大神提供了相应的解决方法,只要想学,办法总比困难多。加油每一个求学者。二、控制语句......
  • 使用NSSM 把 .net core 开发的控制台程序部署成windows 服务
    0.背景应工作需要需要写个对指定网站附件进行监控,发现有新附件时需要程序进行自动下载,程序设计使用技术如下:开发语言:.net8C# 定时任务:Quartzhttp请求和下载:HttpClienthtml解析:HtmlAgilityPack服务部署工具:NSSM 1.什么是NSSM在windows平台NSSM可以把bat、exe等文件......
  • jQuery $.ajax() 方法概述
    原文链接:https://www.bejson.com/apidoc/jquery/jQuery.Ajax.html通过HTTP请求加载远程数据。jQuery底层AJAX实现。简单易用的高层实现见$.get,$.post等。$.ajax()返回其创建的XMLHttpRequest对象。大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获......
  • 超参数选择方法
    (个人学习所用,内容来源于网络,侵权删)超参数选择方法猜测和检查根据直觉选择一个超参数,看是否有效,持续进行。网格搜索设置一定范围均匀分布的一组值,挨个尝试。随机搜索让计算机随机挑选一组值。贝叶斯优化使用像MATLAB的bayesopt之类的工具来自动选择最佳参数,然......
  • R语言k-Shape时间序列聚类方法对股票价格时间序列聚类|附代码数据
    原文链接:http://tecdat.cn/?p=3726最近我们被客户要求撰写关于时间序列聚类的研究报告,包括一些图形和统计输出。本文我们将使用k-Shape时间序列聚类方法检查与我们有业务关系的公司的股票收益率的时间序列企业对企业交易和股票价格在本研究中,我们将研究具有交易关系的公司的......
  • scss 中公共变量的导出方法:export
    scss中公共变量的导出方法:export:https://blog.csdn.net/ww_5211314/article/details/109614511?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170848176116800180690474%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=170......
  • 还在担心报表不好做?不用怕,试试这个方法(二)
    前言在上一篇文章《还在担心报表不好做?不用怕,试试这个方法》中,小编分享了如何使用模板语言生成报表的过程。今天小编进一步介绍模板语言中一些基本的概念和用法,因此读者可以配合上一篇文章一起看。本文介绍的内容有:模板文件绑定数据源单元格扩展模板属性分组排序公式1......
  • 在k8S中,Jenkins发布详细流程是什么?
    在Kubernetes(k8S)中,使用Jenkins进行发布流程通常涉及以下步骤:环境准备:在Kubernetes集群中部署Jenkins服务,可以是通过HelmChart、Operator或直接创建Deployment等方式部署。如果需要,配置Jenkins的持久化存储以保存构建记录和数据。安装并配置与Kubernetes......