Java SE入门及基础(11)

news2025/6/8 11:46:39

程序调试

1. 什么是程序调试

        当程序出现问题时,我们希望程序能够暂停下来,然后通过我们操作使代码逐行执行,观察整个过程中变量的变化是否按照我们设计程序的思维变化,从而找问题并解决问题,这个过程称之为程序调试

2. 为什么需要程序调试

        人无完人,考虑问题不可能面面俱到,尤其是在编写复杂程序的时候,如果程序运行出了问题,定位问题就是关键了,要定位问题就需要使用程序调试

3. 如何进行程序调试

首先在有效的代码上下断点,然后以DEBUG 模式启动程序,程序启动后,通过操作使程序代码逐行执行,观察变量的值的变化,从而找出问题并解决问题

循环结构

1. 什么是循环

循环就是同样的事情反复做多次

2. 为什么要使用循环

思考如下代码存在什么问题?
public class Example {
        public static void main ( String [] args ){
                System . out . println ( "Hello World" ); //1
                System . out . println ( "Hello World" ); //2
                System . out . println ( "Hello World" ); //3
                System . out . println ( "Hello World" ); //4
                System . out . println ( "Hello World" ); //5
                System . out . println ( "Hello World" ); //6
                System . out . println ( "Hello World" ); //7
                System . out . println ( "Hello World" ); //8
                System . out . println ( "Hello World" ); //9
                System . out . println ( "Hello World" ); //10
        }
}
重复的编码出现多次,在 Java 中,这样的情况我们称之为代码冗余。那么如何减少这种重复的冗余代码?这就需要使用到循环结构了。

public class Example {
        public static void main ( String [] args ){
                int i = 0 ;
                while ( i < 10 ){
                        System . out . println ( "Hello World" );
                        i ++ ;
                }
        }
}
对比之前的代码,冗余部分已经完全被去掉了,但是实现的功能却完全是一样的

3. 循环三要素

  • 定义循环变量并赋初值
  • 循环条件
  • 循环变量的更新

while循环

1. 语法

while ( 循环条件 ){
        //循环操作
}

2. 执行流程图

3. 案例

打印 0-9 之间的所有整数

4. 代码实现

public class Example3 {
        public static void main ( String [] args ) {
                //1.定义循环变量并赋初值
                int i = 0 ;
                //2.添加循环条件
                while ( i < 10 ){
                        System . out . println ( i );
                        //3.循环变量更新
                        ++ i ;
                }
        }
}

5. 总结

        while 循环的特征就是先判断,后执行。如果一开始条件就不满足,那么 while 循环可能一次也不执行

练习

        1. 在控制台输出100以内能够被3整除的所有整数。
public class Example4 {
        public static void main ( String [] args ) {
                int i = 0 ; // 定义循环变量并赋上初值
                while ( i < 100 ){ // 循环条件
                        if ( i % 3 == 0 ){ // 能够被 3 整除
                                System . out . println ( i );
                        }
                        i ++ ; // 循环变量的更新
                }
        }
}

        2. 水仙花数是指一个 3 位数,它每位上的数字的 3次幂之和等于它本身(例如:1³ + 5³+ 3³ =153),水仙花数的取值范围在100~1000之间。请设计一道程序,求出所有的水仙花数并在控制 台打印出来

水仙花数解法参考文章:水仙花数(Java解法)-CSDN博客

更多Java SE文章参考:Java SE入门及基础知识合集-CSDN博客

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

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

相关文章

ftp安装与配置 云服务器 CentOS7

1、FTP的安装 #安装 yum install -y vsftpd#设置开机启动 systemctl enable vsftpd.service#启动 systemctl start vsftpd.service#停止 systemctl stop vsftpd.service#查看状态 systemctl status vsftpd.service 2、配置FTP #修改前先进行备份文件 cp /etc/vsftpd/vsftpd…

LeetCode264. 丑数 II(相关话题:多重指针动态规划)

题目描述 给你一个整数 n &#xff0c;请你找出并返回第 n 个 丑数 。丑数 就是质因子只包含 2、3 和 5 的正整数。 示例 1&#xff1a; 输入&#xff1a;n 10 输出&#xff1a;12 解释&#xff1a;[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 个丑数组成的序列。示例 2&am…

物联网协议Coap之Core和NetWork简介

目录 前言 一、Coap的Core包 1、Coap对象 2、Message对象 3、Request对象 4、Response对象 二、Coap的NetWork调试 1、UDP运行模式 2、Network消息接收 3、Sender线程发送数据 三、总结 前言 在之前的博文中&#xff0c;对Californium中Coap的实现进行了简要的介绍&a…

31 树的存储结构二

DIsplay() 递归显示 :图示 求树的高度时&#xff0c;递归的技巧 在递归的过程中&#xff1a;ret单独和任意一个子树的子高度比较&#xff0c;如果ret<max&#xff0c;retmax ------------- 注意&#xff1a;组织链表和子链表的【元素类型】都是TLNode* 链表都要先通过TLNod…

Matlab数学建模算法之模拟退火算法(SA)详解

&#x1f517; 运行环境&#xff1a;Matlab &#x1f6a9; 撰写作者&#xff1a;左手の明天 &#x1f947; 精选专栏&#xff1a;《python》 &#x1f525; 推荐专栏&#xff1a;《算法研究》 &#x1f510;#### 防伪水印——左手の明天 ####&#x1f510; &#x1f497; 大家…

分布式事务:构建无障碍的云原生应用的完美解决方案

目录 一、前言 二、分布式事务概述 2.1 什么是分布式事务 2.2 分布式事务的挑战 2.3 分布式事务的分类 三、传统解决方案分析 3.1 两阶段提交协议&#xff08;2PC&#xff09; 3.2 三阶段提交协议&#xff08;3PC&#xff09; 3.3 补偿事务 3.4 其他传统解决方案 四…

什么是梅尼埃病?

梅尼埃病&#xff08;Meniere’s Disease&#xff0c;MD&#xff09;作为耳鼻咽喉科常见的眩晕疾病&#xff0c;是一种原因不明的、以膜迷路积水为主要病理特征的内耳疾病&#xff0c;临床表现为反复的发作性眩晕、波动性听力下降、耳鸣和耳闷胀感&#xff0c;发病率约为5~20/1…

paypal贝宝怎么绑卡支付

一、PayPal是什么 PayPal是一个很多国家地区通用的支付渠道&#xff0c;我们可以把它理解为一项在线服务&#xff0c;相当于美国版的支付宝。你可以通过PayPal进行汇款和收款&#xff0c;相比传统的电汇和西联那类的汇款方式&#xff0c;PayPal更加简单和容易&#xff0c;被很…

WebRTC入门:基础的核心协议与概念(二十三)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只…

如何将.NET 8.0的ASP.NET Core Web API部署成Windows服务

写在前面 前面写了一篇关于将.NET应用转换成Windows服务的方法&#xff0c;其实真正的目的是为了探索如何将Asp.Net Core Web Api 部署成Windows 服务。基于上一篇的基础&#xff0c;只需把创建 WebApplication 的代码放到 BackgroundService 的ExecuteAsync方法中即可。 其中…

redis夯实之路-集群详解

Redis有单机模式和集群模式。 集群是 Redis 提供的分布式数据库方案&#xff0c;集群通过分片( sharding )来实现数据共享&#xff0c;并提供复制和故障转移。集群模式可以有多个 master 。使用集群模式可以进一步提升 Redis 性能&#xff0c;分布式部署实现高可用性&#xff…

快速了解——逻辑回归及模型评估方法

一、逻辑回归 应用场景&#xff1a;解决二分类问题 1、sigmoid函数 1. 公式&#xff1a; 2. 作用&#xff1a;把 (-∞&#xff0c;∞) 映射到 (0&#xff0c; 1) 3. 数学性质&#xff1a;单调递增函数&#xff0c;拐点在x0&#xff0c;y0.5的位置 4. 导函数公式&#xff1a;f…

MySQL 和 Redis 如何保证数据一致性,通过MySQL的binlog实现

1、简介 MySQL 和 Redis 如何保证数据一致性&#xff0c;目前大多讨论的是先更新Redis后更新MySQL&#xff0c;还是先更新MySQL 后更新Redis&#xff0c;这两种方式在实际的应用场景中都不能确保数据的完全一致性&#xff0c;在某些情况下会出现问题&#xff0c;本文介绍使用 C…

Linux Debian12使用VSCode和Python搭建flask开发环境

一、安装VSCode 在Linux Debian12系统上安装VSCode教程可以参考网上相关教程。 二、安装Python 打开VSCode&#xff0c;安装python和python扩展包&#xff0c;如下图所示&#xff1a; 三、创建Python虚拟环境 1.新建文件夹testFlask 2.用vscode打开文件夹testFlask&#xf…

C++/WinRT 简介

C/WinRT 是 Windows 运行时 (WinRT) API 的完全标准新式 C17 语言投影&#xff0c;以基于标头文件的库的形式实现&#xff0c;旨在为你提供对新式 Windows API 的一流访问。 利用 C/WinRT&#xff0c;你可以采用任何符合标准的 C17 编译器创作和使用 Windows 运行时 API。 Wind…

[VSCode] VSCode 常用快捷键

文章目录 VSCode 源代码编辑器VSCode 常用快捷键分类汇总01 编辑02 导航03 调试04 其他05 重构06 测试07 扩展08 选择09 搜索10 书签11 多光标12 代码片段13 其他 VSCode 源代码编辑器 官网&#xff1a;https://code.visualstudio.com/ 下载地址&#xff1a;https://code.visua…

谷歌最新医学领域LLM大模型:AMIE

2024年1月11日Google 研究院发布最新医疗大模型AMIE&#xff1a;用于诊断医学推理和对话的研究人工智能系统。 文章链接&#xff1a;Articulate Medical Intelligence Explorer (AMIE) giuthub&#xff1a;目前代码未开源 关于大模型之前有过一篇总结&#xff1a;大语言模型(L…

C++11 14 17内存管理

智能指针 unique_ptr 初始化 访问和移动赋值 重置和移动内存资源 自定义删除器 shared_ptr 原理 自定义删除器 分配器allocator和new重载 new表达式原理 operator new delete placement new new (buf) 是一种 "placement new" 的使用方式&#xff0c;它允许在已…

Qt QSQlite数据库插入字符串中存在单个双引号或单个单引号解决方案

1. 前言 当进行数据库写入或更新时&#xff0c;有时会遇到存在字符串中包含单个双引号或者单引号。 2. 单引号和双引号""作用 在数据库中&#xff0c;字符串常量时需要用一对英文单引号或英文双引号""将字符串常量括起来。 比如&#xff1a; select * …

vivado 使用源文件

使用源文件 概述 源文件包括从AMD IP添加的设计源、知识产权&#xff08;IP&#xff09;源目录、RTL设计源、从系统添加的数字信号处理&#xff08;DSP&#xff09;源生成器工具和IP子系统&#xff0c;也称为块设计&#xff0c;由IP集成商创建AMD Vivado的功能™ 设计套件。源…