Java的逻辑控制和方法的使用介绍

前言

       程序的逻辑结构一共有三种:顺序结构、分支结构和循环结构。顺序结构就是按代码的顺序来执行相应的指令。这里主要讲述Java的分支结构和循环结构,由于和C语言是有相似性的,所以这里只会提及不同点和注意要点~~

注意在C语言中,非0表示真,0表示假,所以条件判断我们常常使用表达式的结果作为真假,但是在Java中我们只能使用布尔表达式来作为条件判断!!!

分支结构

if

       我们要注意只能使用布尔表达式来进行条件判断,其余和C语言是一样的,大家来看一下代码案例就可以了:

public class Test {public static void main(String[] args){int a = 10;if(a > 10){System.out.println("a > 10");}else if(a == 10){System.out.println("a = 10");}else{System.out.println("a < 10");}}
}

在这里插入图片描述

这里要注意悬垂else,else 总是和最近的 if 语句进行匹配的!!!

int x = 10;
int y = 10;
if (x == 10) if (y == 10)System.out.println("aaa");
else System.out.println("bbb");

像这个代码,else 是和 if(y == 10)进行匹配的~~

switch

switch的括号内只能是以下类型的表达式:
基本类型:byte、char、short、int,注意不能是 long 类型也不能使用小数(double 和 float 类型)还有boolean类型也是不可以使用的~~
引用类型:String常量串、枚举类型
大家记住可以使用的类型即可~~

		int a = 10;switch(a){case 1:System.out.println(1);break;case 10:System.out.println(10);default:System.out.println(0);break;}

用法和C语言是一样的~~

循环结构

还是一样,循环的条件判断只能使用布尔表达式~~
这里不过多讲解,和C语言都是一样有while,for,do while三大循环结构,do while我们用得比较少 ~ ~

方法

方法就是我们C语言的函数,在Java中被叫做方法~~

方法是有重载的,就是Java支持方法名是一样的,但是可以执行不同的内容,例如书写加法函数,你需要两个整数相加,或者浮点数,又或者三个数字相加等等,这时候由于都是执行加法操作,所以我们可以使用相同的方法名(例如add)来书写函数,这样就避免了取名的复杂度,到时候要调用的时候,我们再去选择就可以了。

	public static float add(float a,float b) {return a + b;}public static int add(int a,int b,int c) {return a + b + c;}public static double add(double a,double b) {return a + b;}public static int add(int a,int b) {return a + b;}public static void main(String[] args) {int a = 10;int b = 20;}

编译器会提示我们要调用哪个具体的方法,左边就是形参部分,右边就是返回值的类型。

在这里插入图片描述

小结一下,方法的重载指的是方法名相同,参数列表不一样(参数的类型,顺序,个数),与返回值的类型无关!!!
这里还要注意顺序不一样,是指数据类型不完全相同的顺序不同假设如果都是int类型的形参,一个方法是(int a, int b),而另一个却是(int b, int a)这是不行是!!!

下面编译器就会报错,如果是类型相同的顺序交换就会报错,编译器会认为这是同一个方法,而你进行了重定义~~

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/54d0ca6338cf47ddba550d1947c62af8.png

在这里插入图片描述

但是下面不同类型的顺序交换是可以的:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/830580.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

日本软文发稿:成功的关键与应注意之事项

在当今的营销环境中&#xff0c;产品和服务如何被消费者所知&#xff0c;和品牌如何被市场所接受&#xff0c;软文发稿扮演了极其重要的角色。对于希望在日本市场拓展业务的企业来说&#xff0c;了解和熟悉日本的软文发稿尤其关键。 一&#xff0c;优秀的媒体平台 日本拥有众…

「玻尔曾孙」领衔!超辐射原子,重塑全球精准测时——

超辐射原子能够帮助我们以前所未有的精度测量时间。在哥本哈根大学最近的一项研究中&#xff0c;研究人员开发了一种新的测量时间间隔&#xff08;秒&#xff09;的方法&#xff0c;这种方法克服了目前最先进原子钟面临的一些限制。 这一成就有望在多个领域产生深远影响&#x…

代码随想录Day 36|Python|Leetcode|01背包问题,你该了解这些! ● 01背包问题,你该了解这些! 滚动数组 ● 416. 分割等和子集

01背包问题&#xff0c;你该了解这些&#xff01; 46. 携带研究材料&#xff08;第六期模拟笔试&#xff09; (kamacoder.com) 代码随想录 (programmercarl.com) 确定dp数组&#xff08;dp table&#xff09;以及下标的含义&#xff1a;dp[i][j] 表示从下标为[0-i]的物品里…

「笔试刷题」:求最小公倍数

一、题目 输入描述&#xff1a; 输入两个正整数A和B。 输出描述&#xff1a; 输出A和B的最小公倍数。 示例1 输入&#xff1a; 5 7 输出&#xff1a; 35 示例2 输入&#xff1a; 2 4输出&#xff1a; 4二、思路解析 这道题&#xff0c;也是模拟实现这一大类的一题…

Unity 递归实现数字不重复的排列组合

实现 private void Permutation(List<int> num, int leftIndex, List<string> strs) {if (leftIndex < num.Count){for (int rightIndex leftIndex; rightIndex < num.Count; rightIndex){Swap(num, leftIndex, rightIndex);Permutation(num, leftIndex 1…

MySQL基础学习(待整理)

MySQL 简介 学习路径 MySQL 安装 卸载预安装的mariadb rpm -qa | grep mariadb rpm -e --nodeps mariadb-libs安装网络工具 yum -y install net-tools yum -y install libaio下载rpm-bundle.tar安装包&#xff0c;并解压&#xff0c;使用rpm进行安装 rpm -ivh \ mysql-communi…

Meta的AI潮流:创新还是用户体验的噩梦?

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

一、交换网络基础

目录 1.交换机的转发行为 2.数据帧的类型 3.ARP地址解析步骤 Hub&#xff1a;物理层设备 交换机&#xff1a;数据链路层设备 1.交换机的转发行为 泛洪&#xff08;Flooding&#xff09;&#xff08;有可能是单播帧&#xff08;未知单播帧&#xff09;&#xff0c;也有可能是…

【算法一则】【动态规划】求二维数组可组成的最大正方形

题目 在一个由 ‘0’ 和 ‘1’ 组成的二维矩阵内&#xff0c;找到只包含 ‘1’ 的最大正方形&#xff0c;并返回其面积。 示例 1&#xff1a; 输入&#xff1a;matrix [["1","0","1","0","0"],["1","0&…

AutoMQ 系统测试体系揭秘

01 前言 Apache Kafka 有着比较完备的自测体系。除了常规的单元测试和集成测试以外&#xff0c;Apache Kafka 还有着 1000 的“系统集成和性能测试”&#xff08;以下简称系统测试&#xff09;。系统测试会拉起一套真实的 Kafka 集群&#xff0c;并模拟用户使用 Kafka 集群的方…

JAVA 中间件之 Mycat2

Mycat2应用与实战教程 1.Mycat2概述 1.1 什么是MyCat 官网&#xff1a; http://mycatone.top/ Mycat 是基于 java 语言编写的数据库中间件&#xff0c;是一个实现了 MySQL 协议的服务器&#xff0c;前端用户可以把它看作是一个数据库代理&#xff0c;用 MySQL 客户端工具和…

HEVC/H.265视频编解码学习笔记–框架及块划分关系

前言 由于本人在学习视频的过程中&#xff0c;觉得分块单元太多搞不清楚其关系&#xff0c;因此本文着重记录这些分块单元的概念以及关联。 一、框架 视频为一帧一帧的图像&#xff0c;其编码的主要核心是压缩空间以及时间上的冗余。因此&#xff0c;视频编码有帧内预测和帧间…

Linux 进程概念和状态

目录 一、冯诺依曼体系结构 二、操作系统 1.概念 2.理解操作系统的管理 硬件和管理 为什么要有操作系统 三、进程的概念 PCB&#xff1a; 进程的删除和子进程的创建 删除 创建子进程 四、进程的状态 七种状态&#xff1a; 实验查看部分状态&#xff1a; R&#x…

如何把为知笔记导入到Notion笔记里面

&#x1f4a1; 大家好&#xff0c;我是可夫小子&#xff0c;《小白玩转ChatGPT》专栏作者&#xff0c;关注AIGC、读书和自媒体。 为知笔记并不开放&#xff0c;笔记文件只能以pdf或者图片的方向导出来&#xff0c;无法与其他笔记文件相互导入导出&#xff0c;然而&#xff0c;稍…

PCF应用切换至CAAS

刚刚开通了一个公众号&#xff0c;会分享一些技术博客和自己觉得比较好的项目&#xff0c;同时会更新一些自己使用的工具和图书资料&#xff0c;后面会整理一些面试资料进行分享&#xff0c;觉得有兴趣的可以关注一下。 文章目录 前言打包镜像Dockerfile语法项目使用遇到的问题…

屎里淘金,买二手显卡不翻车指南

马上五一了&#xff0c;应该也有不少小伙伴在摩拳擦掌想装机吧&#xff1f; 但是奈何最近显卡疯涨&#xff0c;装机大头显卡还没搞定&#xff0c;想一步到位吧&#xff0c;感觉目前显卡都太贵了&#xff0c;没必要。 想向现实妥协吧&#xff0c;但是好像又有点心有不甘。 那…

测试工程师——招聘分析

测试工程师 随着互联网行业的高速发展,快速高质量的产品版本迭代成为企业始终立于不败之地的迫切需求,而在短期迭代的快节奏中,传统测试工作面对更大压力,无法持续提供高效率高质量的人力支撑,所以越来越多的企业需要技术更为全面的测试开发工程师。测试开发 本质上属于测…

【MATLAB源码-第201期】基于matlab的黏菌群优化算法(SMA)无人机三维路径规划,输出做短路径图和适应度曲线

操作环境&#xff1a; MATLAB 2022a 1、算法描述 黏菌优化算法&#xff08;Slime Mould Algorithm, SMA&#xff09;是一种新颖的启发式优化方法&#xff0c;其灵感来源于自然界中的真菌——黏菌。这种算法模拟了黏菌在寻找食物时的行为和网络形成策略。在本文中&#xff0c…

触发器的启用和禁用

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 在 Oracle 数据库中&#xff0c;所创建的触发器可以根据情况&#xff0c;灵活修改它的状态&#xff0c;使其有效或者无效&#xff0c;即启用或者禁用。 其语法格式如下所示。…

社区新零售:重构邻里生活圈,赋能美好未来

新时代的邻里脉动 在城市的肌理中&#xff0c;社区作为生活的基本单元&#xff0c;正经历一场由新零售引领的深刻变革。社区新零售&#xff0c;以其独特的商业模式、创新的技术手段和以人为本的服务理念&#xff0c;重新定义了社区商业的边界&#xff0c;重构了邻里生活的形态…