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;优秀的媒体平台 日本拥有众…

docker hub 官网

1. docker官网&#xff1a; Docker: Accelerated Container Application Development 2. hub官网&#xff1a; https://hub.docker.com/search?qnexus 有时候不好找&#xff0c;或者忘了&#xff0c;特此标记&#xff01;

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

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

AI智能体的未来:引领科技创新潮流

Agent AI智能体的未来 随着Agent AI智能体的智能化水平不断提高&#xff0c;它们在未来社会中的角色、发展路径以及可能带来的挑战也引起了广泛关注。快来分享一下你的看法吧~ 技术进步与创新 随着科技的发展&#xff0c;新的产业和商业模式不断涌现&#xff0c;创造了新的收…

代码随想录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]的物品里…

JAVA 每日面试题(二)

Java 高级面试问题及答案 1. 什么是Java内存模型&#xff08;JMM&#xff09;&#xff1f;它在多线程编程中扮演什么角色&#xff1f; 答案&#xff1a; Java内存模型&#xff08;JMM&#xff09;是一个抽象的概念&#xff0c;它定义了Java程序在执行时&#xff0c;变量的访问…

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

一、题目 输入描述&#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…

用Python将Word文件另存为任意支持的格式

原理是利用win32com接口直接调用office API&#xff0c;好处是简单、兼容性好&#xff0c;只要office能处理的&#xff0c;python都可以处理&#xff0c;处理出来的结果和office word里面“另存为”一致。 from win32com import client as wc word wc.Dispatch(Word.Applica…

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 客户端工具和…

Anaconda代替品,无痛迁移环境,亲测好用

由于Anaconda向公司商用收费&#xff0c;所以需要找到Anaconda的代替品 Miniforce。 本文亲测anaconda虚拟环境到Miniforge的转化&#xff0c; 无痛&#xff0c;省事。 一、介绍Miniforge miniforge集成了Anaconda的核心工具&#xff1a;conda。conda是一个包和环境管理工具。…

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;稍…

大模型的实践应用23-深度混合的transformer改造模型MoD,计算提速50%,算力资源大大节省

大家好,我是微学AI,今天给大家介绍一下大模型的实践应用23-深度混合的transformer改造模型MoD,计算提速50%,算力资源大大节省。“Mixture-of-Depths Transformer”是创新型语言模型,与传统的模型不同,这个模型能够根据输入序列的特定部分动态调整其计算资源的分配,而不是…