版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序设计基础掌握Java语言基础项目1掌握Java语言基础项目1掌握Java语言基础.pptx项目2运用Java面向对象编程.pptx项目3操作Java常用类与异常机制.pptx项目4探索Java高级应用.pptx全套可编辑PPT课件Java概述——搭建Java开发环境任务1.1初识Java程序——编写第一个Java程序任务1.2Java语法基础——计算每月分期付款数额任务1.3顺序结构与选择结构——判断直角三角形任务1.4循环结构——百钱买百鸡任务1.5数组——打印杨辉三角任务1.6Java概述——搭建Java开发环境任务1.1素质目标理解Java以“解决实际问题”为创新导向,树立问题导向思维。将Java技术与国家战略结合,树立科技报国理想。理解Java跨平台特点,培养求同存异意识。通过学习中国企业为JDK注入“中国智慧”,树立民族自信。知识目标了解Java语言的起源、发展历程及核心设计理念。理解Java核心特点的内涵。掌握Java程序的运行机制。理解JDK的概念及组成。能力目标能根据具体需求,选择合适的Java应用平台(JavaSE/JavaEE/JavaME)。能结合实例说明Java特点的应用。能简要描述Java程序的运行过程。能独立安装JDK。搭建Java开发环境。班级组名任务组长学号指导教师组员姓名学号任务Java语言是由SunMicrosystems公司于1995年5月推出的一种面向对象程序设计高级语言,由JamesGosling和同事们共同研发,是目前全球流行的编程语言之一。2010年,Sun公司被Oracle公司收购,Java也随之成为Oracle公司的产品。我们通常所说的Java是指Java面向对象程序设计语言和Java平台的总称。1.1.1Java概述Java有三个技术应用平台:JavaSE(JavaPlatform,StandardEdition,Java平台标准版)JavaEE(JavaPlatform,EnterpriseEdition,Java平台企业版)JavaME(JavaPlatform,MicroEdition,Java平台微型版)▲Java图标JavaSEJavaSE是Java技术的核心和基础,也是JavaEE和JavaME编程的基础。它提供基础Java开发工具、执行环境与应用程序接口(API),用于开发和部署桌面、服务器以及嵌入式设备和实时环境中的Java应用程序。JavaEEJavaEE能够帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java应用程序。它提供Web服务、组件模型、管理和通信API,可用于实现企业级的面向服务体系结构(Service-OrientedArchitecture,SOA)和Web3.0应用程序。JavaMEJavaME为在移动设备和嵌入式设备上运行的应用程序提供一个健壮且灵活的环境。它包括灵活的用户界面、健壮的安全模型、许多内置的网络协议,以及对可以动态下载的连网和离线应用程序的丰富支持。思政元素:问题导向Java从诞生到持续迭代,始终以“解决实际问题”(如跨设备兼容、企业级应用需求)为创新导向,启示我们要树立“问题导向型创新”思维,主动回应社会与行业需求。竞技场(1)Java能实现“一次编写,到处运行(Writeonce,runanywhere)”,这主要体现了其()的核心优势。A.跨平台B.安全稳定C.语法较为简洁D.未来发展空间大(2)下列选项中,不属于Java学习成本较低的原因是()。A.语法简单,容易学习B.各种平台技术成熟C.网上有丰富的学习资源与开源项目D.需要掌握复杂的内存手动管理机制Java程序的执行过程如图所示,首先利用Java编译器(javac.exe)将Java程序源代码编译成Java字节码文件(.class),然后才能运行在JVM上。1.1.3Java程序运行机制▲Java程序执行过程知识锦囊JVM(JavaVirtualMachine,Java虚拟机)是用软件仿真的一台计算机,有自己完善的硬件架构,包括处理器、堆栈、存储器、指令系统等。它可使Java语言在不同的平台上运行,从而使得Java程序与操作系统无关。思政元素:求同存异不同操作系统如同不同的“环境差异”(如不同地区的文化、不同团队的工作模式、不同国家的技术标准),JVM则是“兼容差异的通用桥梁”。这启示我们要具有“尊重差异、寻求共性”的思维,理解“差异不是障碍,找到共性标准(如JVM)就能实现协同”。竞技场①Java源程序文件的后缀是
,Java字节码文件的后缀名称是
。②Java程序实现可移值性,依靠的是
。JDK(JavaDevelopmentKit)是Java语言的软件开发工具包,包含Java运行环境(JavaRuntimeEnvironment,JRE)、Java编译器(javac)、开发工具及核心类库,用于开发、测试和运行Java应用程序。JDK的常用组件包括:1.1.4JDK简介javac.exe:Java编译器,用于将Java源码编译成字节码。java.exe:Java应用程序启动器,用于运行编译后的字节码。javadoc.exe:JavaAPI文档生成器,用于从源代码注释中提取信息并生成HTML格式的API文档。jdb.exe:Java调试器,用于调试Java应用程序。jar.exe:Java文件压缩打包工具,用于将多个Java类文件打包成一个.jar文件。javap.exe:class文件反编译工具,用于将编译后的class文件反编译成Java源代码。jconsole.exe:Java监视与管理控制台,用于诊断和监控Java应用程序。中国企业基于本土复杂业务场景,对OpenJDK进行深度定制优化,形成了多项被全球社区采纳的技术成果。在2015年,阿里基于OpenJDK推出定制版AJDK(AlibabaJDK),针对高并发、大流量场景优化垃圾回收机制,其自研的G1垃圾收集器优化方案被OpenJDK社区采纳,显著提升了全球电商平台的稳定性。腾讯KonaJDK团队在JDK15至JDK18版本中连续四次蝉联中国企业贡献度第一,累计向社区提交近200个补丁。华为毕昇JDK则聚焦金融、通信等关键领域,通过JVM层面的性能调优,在交易处理场景实现吞吐量提升20%,成为国内多家银行核心系统的底层支撑。思政元素:民族自信在全球Java技术生态中,中国已从早期的技术追随者成长为关键贡献者和规则制定者。通过企业主导的技术优化、开源社区的深度参与、国产化生态的自主构建,中国不仅实现了对JDK的本地化创新,更将本土实践转化为全球技术标准,为开源世界注入“中国智慧”。竞技场①下列选项中,不属于JDK的组成部分的是()。A.Java运行环境(JRE)B.Java编译器(javac)C.数据库管理系统(DBMS)D.核心类库②若需将Java源码编译成字节码,应使用JDK中的()组件。A.java.exeB.javac.exeC.jar.exeD.javadoc.exe1.实施思路①下载JDK安装包。②安装JDK。③验证JDK安装。2.实施步骤Java具有跨平台特性,它能在Windows、Mac以及各种Linux/UNIX系统上运行。在Windows系统上写的Java程序,同样可以在Linux系统上运行。对于初学者,建议使用Windows操作系统。(1)下载JDK安装包在Oracle官网可以很方便地下载JDK安装包,具体安装步骤如下:步骤1在浏览器中,输入下载网址/java/technologies/downloads/#jdk21-windows。步骤2鼠标单击“x64Installer”超链接,弹出下载页面,然后单击“下载”按钮进行文件下载。▲访问JDK下载地址(2)安装JDK在Windows64位系统中安装JDK的步骤如下:步骤1鼠标双击下载的“jdk-21_windows-x64_bin.exe”可执行文件,进行安装。步骤2进入“jdk-21_windows-x64_bin.exe-安装程序”对话框,单击“下一步(N)>”按钮。步骤3进入“jdk-21_windows-x64_bin.exe-安装程序”安装路径选择对话框,通过单击“更改...”按钮可设置JDK安装路径,然后单击“下一步(N)”按钮。步骤4开始安装Java,安装完成后,单击“关闭(C)”按钮,完成安装。▲设置JDK安装路径▲“安装完成”对话框(3)验证JDK安装JDK安装完成后,还需要验证其是否安装与配置成功,具体操作如下:按下Win+R键,打开运行窗口,输入cmd,在命令行窗口分别输入java-version和javac-version,按下回车键,若能看到如图所示结果,说明JDK已经安装与配置成功。▲JDK已经安装与配置成功1.JVM、JRE和JDK三者之间的关系2.手动配置环境变量步骤1右击桌面“此电脑”图标,单击“高级系统设置”链接,在弹出的“系统属性”对话框中,单击“环境变量(N)”按钮,,随后弹出环境变量对话框。JVM是运行Java字节码(.class文件)的“虚拟计算机”,负责将字节码翻译成具体操作系统能理解的机器码并执行;JRE包含JVM、运行Java程序必需的核心类库(如java.lang、java.util等基础类)以及其他支持文件(如配置文件、资源文件等),是Java程序运行的最小环境;JDK包含JRE以及开发Java程序所需的工具(如编译器、调试器、文档生成工具等),是Java程序开发的环境。步骤2单击系统变量栏的“新建(W)”按钮,输入变量名“JAVA_HOME”并在“变量值”文本框中输入JDK安装路径。单击“确定”按钮。▲单击“环境变量”按钮▲环境变量对话框▲新建环境变量“JAVA_HOME”步骤3在系统变量栏中,双击变量“Path”,在打开的“编辑环境变量”对话框中,选中“C:\ProgramFiles\CommonFiles\Oracle\Java\javapath”,单击“删除(D)”按钮。▲删除自动生成的变量值步骤4在“编辑环境变量”对话框中,单击“新建”按钮,输入“%JAVA_HOME%\bin”,继续单击“新建(N)”按钮,输入“%JAVA_HOME%\jre\bin”,最后单击“确定”按钮。▲输入两个新变量值步骤5在环境变量对话框中,单击“确定”按钮。然后,在“系统属性”对话框中,单击“确定”按钮。步骤6按照前文中“(3)验证JDK安装”的操作步骤,验证JDK是否配置成功。仿照任务实施的具体过程,完成JDK的下载与安装,并在命令提示符窗口中运行java命令和javac命令。实战训练任务评价1.评价考核各组代表展示作品,介绍任务的完成过程。作品展示前应准备阐述材料,并完成评价表。2.改进措施各组根据评价考核反馈的问题进行改进,并完成改进措施表。第十五届蓝桥杯真题:报数游戏◆问题描述小蓝和朋友们在玩一个报数游戏。由于今年是2024年,他们决定要从小到大轮流报出是20或24倍数的正整数。前10个被报出的数是:20,24,40,48,60,72,80,96,100,120。请问第202420242024个被报出的数是多少?◆答案提交这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。初识Java程序——编写第一个Java程序任务1.2素质目标重视代码格式规范与注释,培养对工作负责的职业操守。面对IntelliJIDEA安装失败问题时,能主动排查原因,培养自立克难素养。知识目标熟悉Java程序的基本结构。掌握IntelliJIDEA的安装流程、Java项目的创建与运行流程。能力目标能独立拆解任意简单Java程序的结构(识别类、主方法、执行代码、注释)。能独立完成IntelliJIDEA的安装,并能编写程序。社会主义核心价值观是当代中国精神的集中体现,凝结着全体人民共同的价值追求。我们应将其内化于心、外化于行,共同建设美好社会。请安装与使用IntelliJIDEA,编写Java程序,打印社会主义核心价值观。班级组名任务组长学号指导教师组员姓名学号任务在开发Java程序之前,让我们先来了解Java程序的基本结构。下面这段简单的Java代码用于输出“HelloJava!”。1.2.1Java程序的基本结构/***可以用来自动创建文档的注释*/publicclassHello{ publicstaticvoidmain(String[]args){ //单行注释-向屏幕输出文本 System.out.println("HelloJava!");//方法内的代码 /*多行注释开始
注释内容
多行注释结束*/ }}1.类的结构Java是面向对象的语言,一个Java程序的基本单位是类,如publicclassHello{},其中public和class是关键字,它们的先后顺序不能改变,中间要用空格分隔。Hello为类的名称,类名后面要跟一对大括号“{}”,所有属于该类的代码都放在大括号内。2.程序的主方法main方法是Java程序的主方法和入口,Java程序从main方法开始执行。没有main方法,计算机就不知道从哪里开始执行程序。在一个Java项目中,有且仅有一个main方法,它是项目启动的源头。在编写main方法时,必须按照其格式编写,程序要执行的代码都放在main方法的大括号内。3.方法内的代码方法内的代码由0条或多条语句组成,每条语句以分号结束,如System.out.println("HelloJava!");语句,用于向控制台输出信息。4.注释注释就是对代码的解释和说明,能增加代码可读性。程序员最大的痛苦莫过于修改一个没有注释的程序,因为对于别人写的代码,很难理解他人的编程思路;对于自己写的代码,过一段时间也会忘记当时的编写目的。在Java中,注释有三种方式:文档注释:使用“/**”开头,以“*/”结尾,可占多行,允许在程序中嵌入关于程序的信息,可使用javadoc工具软件来生成信息,并输出到HTML文件中。单行注释:使用“//”开头,从“//”开始后的文字都被认为是注释。多行注释:使用“/*”开头,以“*/”结尾,在“/*”和“*/”之间的内容都被视为注释,注释可占多行。知识锦囊在程序的基本结构中,类名是自定义的,其他代码在开始编程阶段无须改变,main方法内的代码根据程序需要完成的任务自行编写。Java程序中的标点符号均为英文输入状态下的符号。建议每行只写一条语句。“{”一般放在该结构的开始行代码的末尾,“}”与该结构的第一个字母对齐,并独占一行。低一层的语句应该在高一层的语句下缩进若干个空格后再书写,这样可以让程序结构更加清晰,增强程序的可读性。思政元素:职业操守软件行业“代码规范与注释是协作前提”的行业准则,说明规范与注释不仅是“个人习惯”,更是“对团队伙伴负责”的体现,应培养遵守规则、尊重他人的职业操守。竞技场Java执行是从
方法开始执行的,此方法的完整定义是
。集成开发环境(IDE,IntegratedDevelopmentEnvironment)将程序开发环境与程序调试环境集成在一起,编程界面友好,能提高编程效率。IntelliJIDEA是Java的集成开发环境(IDE),它是一个开放源代码的、基于Java的可扩展集成开发平台。1.2.2安装与使用IntelliJIDEA1.安装IntelliJIDEA(1)在浏览器中,输入网址:/idea/download/?section=windows。在该页面中,找到免费的社区版本IntelliJIDEACommunityEdition,然后单击“Download”按钮。▲IntelliJIDEACommunityEdition页面(2)进入下载页面,在弹出的对话框中,设置下载路径,然后鼠标单击“下载”按钮下载。(3)鼠标双击下载的“ideaIC-2025.2.1.exe”可执行文件,进行安装。(4)进入“IntelliJIDEACommunityEdition安装”对话框,单击“下一步(N)>”按钮。(5)设置安装路径,然后单击“下一步(N)>”按钮。▲安装界面(6)勾选安装选项(建议初学者勾选窗口中所有选项),然后单击“下一步(N)>”按钮。(7)选择“开始”菜单文件夹,然后单击“安装(I)”按钮开始安装。(8)安装完毕后,在弹出的窗口单击“完成(F)”按钮结束安装过程。▲勾选安装选项思政元素:自立克难面对安装中的潜在问题(如JDK版本不兼容、路径含中文导致报错),鼓励自主查阅官方安装文档、排查环境配置,提升自主解决问题的素养。2.设置编码格式Java程序的默认字符编码与控制台的字符编码是不一致的,在开发过程中,当在控制台中输出一些中文字符时,有时候会显示为乱码。要解决这个问题,就需要统一字符编码格式。(1)在IntelliJIDEA的控制台中执行“菜单栏→File→Settings”操作,在“Settings”对话框中,执行“Editor→FileEncodings”操作,将“GlobalEncoding”“ProjectEncoding”和“Defaultencodingforpropertiesfiles”均设置为“UTF-8”,最后单击“Apply”按钮。▲将文件编码设置为“UTF-8”编码(2)在“Settings”对话框中,执行“Build,Execution,Deployment→Complier→JavaComplier”操作,将“Additionalcommandlineparameters”设置为“-encodingutf-8”,最后单击“OK”按钮。▲将编译器编码参数设置成“UTF-8”编码拓展学编码格式特点适用场景UTF-8支持全球字符集,文件体积较小适用于大多数开发场景GBK支持中文字符,文件体积较大适用于中文环境ISO-8859-1支持西欧字符集,文件体积较小适用于西欧语言环境常见编码格式对比3.使用IntelliJIDEA编写程序(1)IntelliJIDEACommunityEdition安装完毕后,会在桌面上创建快捷启动图标,鼠标双击图标启动IntelliJIDEACommunityEdition。(2)在打开的“ImportSettings”界面中,单击“SkipImport”。(3)在打开的“WelcometoIntelliJIDEA”界面中,单击“NewProject”按钮。▲欢迎界面(4)在打开的“NewProject”界面中,在“Name”文本框中输入项目名“Project1”,在“JDK”下拉列表中,选择学习任务1已安装的“JDK21.0.8”,然后单击“Create”按钮。▲创建项目Project1(5)在打开的“Project1”界面中,鼠标右击左侧栏中的“Src”文件夹,在弹出的菜单中单击选择“New→JavaClass”。▲单击“JavaClass”菜单项(6)在打开的“NewJavaClass”界面中的文本框中,输入“Main”,并在其下面的列表中选中“Class”,然后按“Enter”键。▲新建Main类(7)在“Project1”界面中的“Main.java”代码编辑窗口中输入代码。▲编辑代码(8)在“Project1”界面中,单击工具栏上的“”运行按钮,在主工作区下方会出现RUN窗口来显示程序的运行结果。▲运行结果1.实施思路(1)下载并安装IntelliJIDEACommunityEdition。(2)新建Java项目Project1。(3)新建Java文件Main。(4)编写Java代码,并运行。2.程序代码publicclassMain{ publicstaticvoidmain(String[]args){ //打印标题 System.out.println("======================================"); System.out.println("社会主义核心价值观"); System.out.println("======================================"); //打印国家层面价值目标 System.out.println("【国家层面价值目标】"); System.out.print("富强民主文明和谐\n"); //打印社会层面价值取向 System.out.println("【社会层面价值取向】"); System.out.print("自由平等公正法治\n"); //打印公民层面价值准则 System.out.println("【公民层面价值准则】"); System.out.print("爱国敬业诚信友善\n"); }}使用输出语句打印一首李白的诗《静夜思》,要求每一句单独占一行,且诗句格式如下:《静夜思》床前明月光,疑是地上霜。举头望明月,低头思故乡。1.请编写Java程序,打印一个直角边长度为4的直角三角形,用#号组成,效果如下:实战训练##########2.说起《植物大战僵尸》中的石头怪,大家一定不会陌生。请编写Java程序,输出一个石头怪物,效果如下:任务评价1.评价考核各组代表展示作品,介绍任务的完成过程。作品展示前应准备阐述材料,并完成评价表。2.改进措施各组根据评价考核反馈的问题进行改进,并完成改进措施表。第十五届蓝桥杯真题:拼正方形◆问题描述小蓝正在玩拼图游戏,他有7385137888721个2×2的方块和10470245个1×1的方块,他需要从中挑出一些来拼出一个正方形,比如用3个2×2和4个1×1的方块可以拼出一个4×4的正方形,用9个2×2的方块可以拼出一个6×6的正方形,请问小蓝能拼成的最大的正方形的边长为多少?◆答案提交这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。Java语法基础——计算每月分期付款数额任务1.3素质目标遵守标识符命名规范,增强遵守规则的意识。区别不同数据类型,培养尊重差异的意识。理解变量的可变性,培养与时俱进的意识。培养用户交互意识与输入校验习惯,学会倾听他人。灵活运用运算符优先级规则,学会分清主次。辨别自动类型转换和强制类型转换使用场景,培养辩证思维。知识目标掌握标识符与关键字。掌握Java的数据类型。掌握常量与变量。掌握Java的数据输入与输出。掌握运算符与表达式。掌握数据类型转换。能力目标能命名符合规范的标识符,并能区分关键字与用户标识符。能使用不同数据类型表达数据信息。能使用常量与变量处理数据。能输入与输出数据。能使用运算符与表达式进行运算。能根据具体场景判断何时使用自动类型转换,何时需要进行强制类型转换。超前消费和分期付款已成为众多年轻消费者的首选。从购买手机到选购服装、化妆品,各种商品均可享受分期付款服务,且方式愈发多样。然而,随着分期付款的普及,各种欺诈手段也层出不穷,我们需要时刻防范陷入高息贷款的圈套。请编写Java程序,输入本金、年利率、分期月数,使用以下公式计算每月分期付款数额(保留1位小数):EMI=p*r*(1+r)n/((1+r)n-1)其中:p=本金r=每月利率n=分期付款多少个月如果年利率为R%,则使用以下公式计算月利率:Rate(r)=R/(12*100)提示:使用Java标准库中的Mathpow(a,b)方法求a的b次方。班级组名任务组长学号指导教师组员姓名学号任务1.3.1标识符与关键字1.标识符在Java中,标识符(Identifiers)是程序员定义的用于命名变量、方法、类等的符号,其命名规则如下:标识符是由英文字母、数字、下画线“_”、美元符号“$”、中文、韩文等字符组成的字符串。标识符不能以数字字符开头。标识符不能使用Java语言中的关键字,如int、class、public、static等。标识符区分大小写,如age和Age是两个不同的变量。标识符不能与关键字重名。2.关键字关键字是Java语言中具有特殊含义的保留字,通常用于表示数据类型、程序结构等。关键字全部小写,且不能被用作变量名、方法名、类名、包名、参数或任何标识符。类别关键字用于定义数据类型或数据值的关键字boolean、int、long、short、byte、float、double、char、class、interface、enum、true、false用于程序控制的关键字if、else、do、while、for、switch、case、default、break、continue、return、instanceof用于访问控制的关键字private、protected、public用于修饰类、方法和变量的关键字abstract、extends、final、implements、native、new、static、strictfp、synchronized、transient、volatile用于异常处理的关键字try、catch、finally、throw、throws、assert用于包的关键字package、import用于变量引用的关键字this、super、void保留关键字goto、const▼Java关键字思政元素:遵守规则标识符的命名规则就像社会生活中的各种规章制度,约束着我们的行为。遵守规则是每个公民的基本义务。在编程中,严格遵守标识符的命名规则,不仅能保证程序的可读性和可维护性,也是程序员职业素养的体现。竞技场(1)以下选项中,属于Java中的关键字的是()。A.mainB.StringC.SystemD.false(2)下列标识符中,合法的是()。A.123usernameB.my-varC.$nameD.int在程序设计中,要使用和处理数据,可以为不同的数据指定不同的数据类型。在Java中数据类型分为基本数据类型和引用数据类型两大类。1.3.2数据类型▲数据类型思政元素:尊重差异不同的数据类型有着不同的特点和用途,就像社会中的不同个体,每个人都有自己的特长和价值。我们应该尊重每个人的差异,认识到每个人在社会中都能找到适合自己的位置,发挥独特的作用。1.整数类型在Java中,整数类型包括字节型byte、短整型short、整型int、长整型long。整数类型字节数取值范围byte1-27
~27-1(-128~127)short2-215
~215-1(-32768~32767)int4-231
~231-1long8-263
~263-1知识锦囊长整型数值必须有一个后缀L(l),否则Java编译器会认为该数值是int类型,可能会报错,如以下代码:从Java7开始,可以在数字中添加下画线,如300_000_000_000_000表示300万亿。下画线仅便于阅读数据。publicclassTest{ publicstaticvoidmain(String[]args){ System.out.println(300000000000000); }}java:整数太大整数有十进制、二进制、八进制和十六进制等四种表示形式。(1)十进制整数由0~9十个数字组成,进位规则为“逢十进一”,如123456、-456789、0等。(2)二进制整数由0和1两个数字组成,进位规则为“逢二进一”,并且以0b/0B开头,如0b01、0b11、0b101等。(3)八进制整数由0~7八个数字组成,进位规则为“逢八进一”,并且以0开头,如010、011、016等。(4)十六进制整数由0~9十个数字和a~f(A~F)六个字母组成,进位规则为“逢十六进一”,并且以0x/0X开头,如0x10、0xde、0xf等。竞技场下列4行代码的输出结果是_______________。 System.out.println(18); System.out.println(022); System.out.println(0x12); System.out.println(0b10010);2.浮点类型在Java中,浮点类型包括单精度型float和双精度型double。整数类型字节数有效位数取值范围float47~8-3.4×1038
~3.4×1038double816~17-1.7×10308
~1.7×10308float类型的数值有一个后缀F(f),没有后缀F(f)的浮点数默认为double类型。浮点数有小数形式和指数形式两种类型。(1)小数形式小数形式是由数字和小数点组成的一种表示形式,如0.12、.12、12.等。需要注意的是:小数形式表示的浮点数必须有小数点。(2)指数形式指数形式类似于数学中的指数函数。在数学中,一个数可以用幂的形式来表示,如2.3026可以表示为0.23026×101。在Java中,则以e或E后跟一个整数来表示以10为底的幂数,如2.3026可以表示为0.23026E1。知识锦囊Java规定:任何一个正浮点数除以0,结果为正无穷Infinity;任何一个负浮点数除以0,结果为负无穷-Infinity。字母E(e)前后必须有数字,后面的数字必须为整数,并且字母E(e)前后以及数字之间不得插入空格,如3E、E3、55E0.3等都是非法的指数形式。拓展学在使用浮点数进行计算时,可能出现不精确的结果,如以下示例:publicclassMain{ publicstaticvoidmain(String[]args){ System.out.println(0.1+0.2); System.out.println(0.3+0.6); }}publicclassMain{ publicstaticvoidmain(String[]args){ System.out.println(0.1+0.2); System.out.println(0.3+0.6); }}运行结果为:0.300000000000000040.8999999999999999这是因为计算机用浮点数表示法来表示浮点数,只能精确表示2的x次方,如0.5可用2-1精确表示。对于这种情况,所有语言都存在这种问题。在某些场合,如银行数据、会计数据、股票交易数据、期货交易数据、黄金交易数据等,需要精确表示,不允许存在误差。因此,需要精确表示的数据,不能采用浮点数。竞技场①下面的数据类型中,属于float型的是()。A.33.8B.129C.89LD.8.6F②3.15E2表示的数据是()。A.3.15×2B.3.15×10-2C.3.15×102D.0.315×10-23.字符类型在Java中,字符类型char是用2个字节的Unicode字符表示。每个字符常量使用一对单引号括起来(如'a'、'D'),取值范围为'\u0000'~'\uFFFF',可以编码65535个字符,其中'\u0000'~'\u00FF'的256个字符与ASCII码字符完全重合。由于采用Unicode字符,所以中文汉字也可以作为一个字符处理。在Java中,转义字符是具有特定含义的字符,它以反斜杠“\”作为开始标志,后接若干字符。转义字符\\\'\"\0\n\ddd描述反斜杠符号单引号双引号空字符(NUL)换行1~3位的八进制字符转义字符\b\v\t\r\f\uhhhh描述退格(Backspace)纵向制表符横向制表符回车(Enter)换页十六进制Unicode字符▼常见的转义字符4.布尔类型在Java中,布尔类型boolean只有true和false两种值,在内存中占1个字节,用于表示真值和假值,通常用于判断某条件是否成立。5.字符串在日常生活中,经常需要处理文本,如人的姓名和地址等。文本就是字符串(String),它由一组字符序列(0个或多个字符)组成。字符串以双引号“””包含。当括号内有双引号的时候,就相当于告诉计算机——你不需要执行多余的操作,我输入什么,你就打印什么。竞技场Java中布尔类型的关键字是什么?它有哪些合法取值?拓展学可使用符号“+”将多个字符串和其他数据类型的值连接起来,示例如下所示。publicclassMain{ publicstaticvoidmain(String[]args){ intage=18; System.out.println("我今年"+age+"岁"); }}运行结果为:我今年18岁竞技场将上文【拓展学】中的代码替换为下面的代码后,输出结果是___________。System.out.println(“*****\n\t*****\n\t\t*****”);1.3.3常量与变量1.常量常量就是在程序中固定不变的值,是不能改变的数据。在Java中,常量包括字面值常量和自定义常量。试炼:常量示例。publicclassMain{publicstaticvoidmain(String[]args){finalintMAX_VALUE=100;//整数常量finaldoublePI=3.14159;//浮点常量finalbooleanFLAG=true;//布尔常量finalcharCHARACTER='A';//字符常量finalStringGREETING="Hello";//字符串常量finalStringEMPTY=null;//空常量}}字面值常量包括整数常量、浮点常量、布尔常量、字符常量、字符串常量、空常量(null)等;自定义常量是指通过final关键字把变量名定义成常量类型,其常量名一般为大写字母。竞技场下列选项中,属于合法定义常量的是()。A.finaldoublePI;PI=3.14;B.finalintMAX=null;C.finalStringNAME;D.finalintSIZE=50;2.变量在计算机中,将用于存储程序执行过程中产生的临时数据的空间称为内存。当为一个值取名字的时候,它将会储存在内存中,这部分内存称为变量。变量之所以叫“变量”而不叫“恒量”,就是因为它是可以变的。变量既可以储存数据,又可以操作数,是编程中最基本的存储单位。思政元素:与时俱进变量的值可以随着程序的运行而变化,这如同我们生活中的各种事物,都是在不断发展和变化的。我们要学会用发展的眼光看待问题,适应事物的变化。声明变量是指根据数据的类型在内存中申请一块存储空间,并为该存储空间命名,其语法如下:数据类型变量名;其中,数据类型可以是Java定义的任意一种数据类型。变量名属于Java中的标识符,必须满足标识符的命名规则。知识锦囊变量名在同一程序块中不能重复。变量名不建议包含中文、韩文等字符。变量名在不违反命名规则的前提下,还要能简短且清楚地表明变量的作用,可以由一个或多个单词组合而成,通常采用“驼峰式”命名法,即第一个单词以小写字母开始,其后单词的首字母都采用大写字母,如studentName。试炼:声明变量。Stringname;//声明一个名为name的字符串类型的变量变量是一个“盒子”,而这个往盒子里装东西的过程就是赋值,其语法如下:变量名=值;知识锦囊“=”右边的数据类型要与“=”左边变量声明的数据类型一致,否则可能会报错。示例如下所示。试炼:变量赋值。name="孙悟空";//将字符串“孙悟空”赋值给变量“name”publicclassTest{ publicstaticvoidmain(String[]args){ Stringname=123; }}java:不兼容的类型:int无法转换为java.lang.String如果将声明变量和为变量赋值的步骤合并,即声明变量的同时为该变量赋值,其语法如下:数据类型变量名=值;试炼:声明变量的同时为该变量赋值。Stringname="孙悟空";知识锦囊变量必须在声明和赋值后才能使用,否则会报错。示例如下所示。publicclassTest{ publicstaticvoidmain(String[]args){ Stringname; System.out.println(name); //输出变量name存储的值 }}java:可能尚未初始化变量name拓展学Java字节码程序运行时,基本数据类型变量值直接在JVM的栈中分配存储空间,如图所示的变量i。引用数据类型的变量首先在栈空间分配一个存储地址的空间,写入null,然后在堆中分配存储数据的位置,接着把堆空间分配的存储空间的起始地址写入栈空间对应位置(类似于C语言的指针)。如图所示的字符串变量s,先在栈分配一个空间,其内容写入null,其对应的字符串“abcd”在堆空间分配到起始地址为34000H的存储空间,分配后把该地址写入栈空间s变量对应的存储空间。一个精通Java语言的程序员,必须非常清楚其所定义的变量是在栈还是在堆存储数据。这一点非常重要,因为只有搞清数据的存储,才能理解程序的运行结果。▲不同数据类型变量在JVM的存储竞技场(1)关于Java变量,以下说法正确的是()。A.变量声明后必须立即初始化B.变量名可以以数字开头C.变量的值是可变的D.所有变量默认初始化为0(2)下列选项中,属于合法定义变量的是()。A.int2count=10;B.double$price=9.99;C.Stringfirst-name="John";D.booleanis-valid=true;1.3.4数据的输入与输出1.输出数据在Java中,使用println()或print()方法可以将结果输出到标准控制台上,其语法如下:System.out.println("输出字符串:代码换行");System.out.print("输出字符串:代码不换行");试炼:使用println()方法输出内容,其内容可以是数字、字符串或包含运算符的表达式。System.out.println(5);//输出数字5System.out.println("孙悟空");//输出字符串“孙悟空”System.out.println(2*5);//输出2*5的结果10使用println()或print()方法输出数据时无法控制输出数据的格式。在Java中,可以通过printf()方法控制数据输出的格式,其语法如下:System.out.printf("格式控制符1格式控制符2…",参数1,参数2…);格式控制符%d%md%f%.nf作用输出int类型数据输出占m列int类型数据输出float、double类型的浮点数输出小数保留n位的浮点数格式控制符%m.nf%e%c%s作用输出占m列小数保留n位的浮点数以指数形式输出float、double类型的浮点数输出char类型数据输出String类型数据▼常见格式控制符知识锦囊使用printf()方法时,格式控制符的个数与顺序要与后面参数的个数与顺序相一致,printf()方法中的非格式控制符将原样输出。试炼:使用printf()方法格式化输出圆周率PI。name="孙悟空";//将字符串“孙悟空”赋值给变量“name”publicclassMain{ publicstaticvoidmain(String[]args){ doublePI=3.141592654; System.out.printf("PI=%8.2f\n",PI);//默认输出右对齐 System.out.printf("PI=%-8.2f\n",PI);//"-"表示输出左对齐 }}运行结果:PI=3.14PI=3.14以上代码表示变量PI可以输出8个字符的宽度和小数点后两位的精度,即打印4个空格和4个字符。其中,默认输出右对齐,“-”表示输出左对齐。竞技场(1)以下代码的输出结果是()。System.out.println("Start");System.out.printf("%s%d%n","Step",1);System.out.print("End");A.StartB.StartC.StartStep1D.StartStep1EndStep1Step1EndEndEnd(2)以下代码的输出结果是()。System.out.printf("|%5d|",42);A.|42|B.|42|C.|42|D.|00042|(3)以下代码中,能输出"Price:$19.99"(含美元符号)的是()。A.System.out.print("Price:$19.99");B.System.out.printf("Price:%s19.99","$");C.System.out.printf("Price:%c19.99",'$’);D.以上都对2.输入数据在Java中,使用Scanner对象接收用户的键盘输入,当使用Scanner对象时,程序将会等待用户在控制台输入信息,当用户按回车键时,返回用户输入的字符串。知识锦囊通过Scanner对象实现控制台的输入,需要导入java.util.Scanner包,包的概念将在后面的学习任务中讲解。sc.next()读取输入流中下一个非空白字符序列,直到遇到空格、制表符或换行符为止,不包括换行符;sc.nextLine()读取整行所有字符,直到遇到换行符为止,其包括末尾换行符。试炼:使用Scanner对象输入数据示例。importjava.util.Scanner;publicclassMain{ publicstaticvoidmain(String[]args){ Scannersc=newScanner(System.in); intscore=sc.nextInt();//接收输入的整数 doubleprice=sc.nextDouble();//接收输入的浮点数 booleanbool=sc.nextBoolean();//接收输入的布尔值 charsex=sc.next().charAt(0);//接收输入的字符 System.out.println(score+","+price+","+sex); sc.close(); }}运行结果为:9286.5true男92,86.5,男思政元素:学会倾听数据输入是程序与用户交互的重要环节,它体现了信息的传递和沟通。在生活中,沟通是人与人之间建立联系、解决问题的重要方式。通过学习数据输入,我们要认识到有效沟通的重要性,学会倾听他人的需求和意见。竞技场(1)若用户输入(含空格)“张三李四”,则以下代码的输出结果是()。Scannersc=newScanner(System.in);System.out.print("输入姓名:");Stringname=sc.next();System.out.println("你好,"+name);A.你好,张三李四B.你好,张三C.你好,李四D.编译错误1.3.5运算符与表达式1.表达式中学阶段我们学习过公式,如y=ax2+bx+c;其中a、b、c为常量,x为变量;y的值由x通过特定运算法则计算得出。在计算机中,由变量或常量通过运算符连接而成的有意义的公式称为表达式。知识锦囊这里所说的有意义,是指符合运算规则,比如a+*/b就违反运算规则而无意义。2.运算符(1)算术运算符算术运算符用于数值类型数据的计算,包括加、减、乘、除、模运算。设a=9,b=2,运算结果见下表。运算符描述实例结果+求操作数的和a+b11-求操作数的差a–b7*求操作数的乘积a*b18/求操作数的商a/b4%求操作数相除的余数a%b1知识锦囊取模运算“%”适用于整数、浮点数。Java两个整数运算的结果也为整数,如28/3的值为9。优先级规则:先乘、除、模后加减,从左往右依次运算,必要时加上括号表示运算的先后顺序。试炼:计算两个数的四则混合运算。publicclassMain{ publicstaticvoidmain(String[]args){ intnum1=5; intnum2=2; intresult; result=num1/3+(num2+6)%4-num2*2; System.out.println(result); }}运行结果为:-3拓展学在赋值运算符“=”之前加上其他运算符可以构成复合赋值运算符,其结合性是自左向右,例如:+=-=*=/=%=例如:x+=1; 等价于x=x+1;n*=m+3; 等价于n=n*(m+3);a+=a+=6; 等价于a=a+(a+6);复合赋值运算符可简化赋值语句并提升执行效率。竞技场(1)下列代码的输出结果是______________。
intn=233;System.out.println(n%8.0);(2)若x为int型变量,则执行以下语句后,x的值为()。x=6;x+=x-=x*x;A.36B.-60C.60D.-24(3)如何求一个两位整数的个位和十位?(4)已知学生张三的3门课程的成绩分别是:C语言为70分,MySQL数据库为86分,Java为90分。求3门课的平均分数(保留一位小数)。(2)自增、自减运算符自增运算符“++”和自减运算符“--”,表示使变量的值增1或者减1。例如:x++;等价于x=x+1;x--;等价于x=x-1;知识锦囊“++”“—”运算符是单目运算符,具有自右向左的结合性,其运算对象只能是变量,不能是常量和表达式。可以出现在变量的前面,也可以出现在变量的后面。当表达式中还有其他运算时,如果“++”或“--”出现在变量的前面,变量先自增或自减,再执行其他运算;如果“++”或“—”出现在变量的后面,先执行其他运算,变量再自增或自减。试炼:对变量进行自增、自减运算。publicclassMain{ publicstaticvoidmain(String[]args){ inti=5;//i初始值为5 intj=i++;//++在i的后面,先进行赋值j=5,i再自增1,i=6 intk=++i;//++在i的前面,先进行自增1操作,i=7,再进行赋值k=7 System.out.println("i="+i); System.out.println("j="+j); System.out.println("k="+k); }}运行结果为:i=7j=5k=7竞技场(1)已知j=3,k=++j-1,则k的值为()。A.1 B.2 C.3 D.4(2)如果i=3,k=i++,执行过后k,i的值为(
)。A.3,3 B.3,4 C.4,3 D.4,4(3)关系运算符关系运算符用于比较两个值的大小,共有六种,包括<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(等于)、!=(不等于)。关系运算符两边的运算对象可以是Java语言中任意合法的表达式。关系运算符的运算结果是布尔型:当关系表达式成立时,运算结果为true;否则为false。知识锦囊关系运算符的结合性:自左向右(左结合)。竞技场下列代码的输出结果是_________________。inta=20,b=17;System.out.println(a<b);System.out.println(a>b);System.out.println(a!=b);System.out.println(a-b>10);(4)逻辑运算符逻辑运算符用于两个布尔型的变量或常量的运算,主要有逻辑与“&&”、逻辑或“||”、逻辑非“!”。逻辑运算符说明&&(与)前后两个操作数都为true时,才返回true;否则返回false||(或)只要两个操作数中有一个为true,就返回true;否则返回false!(非)只需要一个操作数,如果操作数为true,则返回false;如果操作数为false,则返回true知识锦囊①“!”为单目运算符,具有自右向左的结合性。②“&&”“||”为双目运算符,具有自左向右的结合性。③逻辑运算符的优先级由高到低为:!>&&>||。试炼:判定成绩能否获取软件工程师证书,条件为笔试成绩>=60且机试成绩>=60。publicclassMain{ publicstaticvoidmain(String[]args){ intwrittenScore=90; intpracticeScore=82; booleanresult=(writtenScore>=60)&&(practiceScore>=60); System.out.println("能够获取软件工程师的判定结果为:"+result); }}运行结果:能够获取软件工程师的判定结果为:true竞技场(1)下列代码的输出结果是_______________。booleannum1=true,num2=false;System.out.println(num1&&num2);System.out.println(num1||num2);System.out.println(!num1);(2)下列运算符中,优先级最高的运算符是()。A.!B.%C.-=D.&&(3)下列代码的输出结果是_______________。intnum1=6;intnum2=15;booleanresult1=(num1<num2)||(num2++>10);System.out.println(result1+","+num1+","+num2);(5)位运算符位运算符主要针对二进制数的位进行运算,包括按位与(&)、按位或(|)、按位非(~)、按位异或(^)等。▼位运算符运算法则①按位与运算符按位与运算符的运算规则为:两个二进制位中都为1时,结果才为1,否则结果为0。试炼:按位与运算符使用示例。publicclassMain{ publicstaticvoidmain(String[]args){ inta=4; intb=13; System.out.println("a&b的运算结果是:"+(a&b)); }}运行结果为:a&b的运算结果是:4a的值是4,转换成二进制为0100;b的值是13,转换成二进制为1101。根据按位与运算法则,可得结果为0100,即4。②按位或运算符按位或运算符的运算规则为:两个二进制位中只要有一个1,结果就是1,否则结果为0。试炼:按位或运算符使用示例。publicclassMain{ publicstaticvoidmain(String[]args){ inta=4; intb=13; System.out.println("a|b的运算结果是:"+(a|b)); }}运行结果为:a|b的运算结果是:13a的值是4,转换成二进制为0100;b的值是13,转换成二进制为1101。根据按位或运算法则,可得结果为1101,即13。③按位非运算符按位非运算符的运算规则为:如果二进制位是1,结果为0;如果二进制位是0,结果为1。试炼:按位非运算符使用实例。publicclassMain{ publicstaticvoidmain(String[]args){ inta=4; System.out.println("~a的运算结果是:"+(~a)); }}运行结果为:~a的运算结果是:-5a的值是4,转换成二进制为0100,根据按位非运算法则,可得结果为1011(补码),即-5,其计算规律为:~x的结果为-(x+1)。④按位异或运算符按位异或运算符的运算规则为:两个二进制位相同,结果为0;两个二进制位不同,结果为1。试炼:按位异或运算符使用示例。publicclassMain{ publicstaticvoidmain(String[]args){ inta=4; intb=13; System.out.println("a^b的运算结果是:"+(a^b)); }}运行结果为:a^b的运算结果是:9a的值是4,转换成二进制为0100;b的值是13,转换成二进制为1101。根据按位异或运算法则,可得结果为1001,即9。知识锦囊位运算符中,按位非为单目运算符,具有自右向左的结合性;按位与、按位或、按位异或为双目运算符,具有自左向右的结合性。竞技场(1)下列代码的输出结果是_______________。inta=3,b=5; a=a^b; b=a^b; a=a^b;
System.out.println("a="+a+",b="+b);(2)如何使用位运算判断整数奇偶性?(6)条件运算符条件运算符又称“三目”运算符,其语法如下:表达式1?表达式2:表达式3先计算表达式1的值;其中,表达式1必须是boolean表达式。如果表达式1的值为true,则计算表达式2的值,并把这个值作为整个表达式的结果。如果表达式1的值为false,则计算表达式3的值,并把这个值作为整个表达式的结果。条件运算符的运算规则如下:知识锦囊①条件运算符的优先级低于关系运算符和算术运算符,高于赋值运算符。②条件运算表达式中的表达式1的值类型必须为布尔类型,只能是true或false。③条件运算符为三目运算符,具有自右向左的结合性。试炼:获取两个整数的最大值。publicclassMain{ publicstaticvoidmain(String[]args){ inta=5; intb=3; intmax=a>b?a:b; System.out.printf("%d和%d的最大值:%d\n",a,b,max); }}运行结果:5和3的最大值:5竞技场输入三个整数,使用条件运算符求解三个数的最大值。(7)运算符优先级Java语言中大部分运算是从左向右运算的,只有单目运算符、赋值运算符和三目运算符例外。单目运算符、赋值运算符和三目运算符是从右向左结合的,也就是从右向左运算。Java中还规定了运算符的优先次序,即优先级
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江苏南通川润人力资源有限公司招聘2人备考题库及完整答案详解【全优】
- 2026广西桂林旅游学院酒店管理学院国际酒店管理学院协议工资制人员招聘6人考前冲刺试卷带答案详解(能力提升)
- 2026年合肥市庐阳区机关事业单位招募青年就业见习人员56人考前冲刺试卷及参考答案详解(突破训练)
- 2026云南红河州弥勒市元亨社会工作服务中心招聘1人模拟试卷及参考答案详解AB卷
- 2026年丽水市教育局直属学校公开招聘工作人员19人考前冲刺试卷附答案详解(完整版)
- 2026福建南平市城发人力资源服务有限公司 招聘1人考前冲刺密卷及参考答案详解【夺分金卷】
- 2026江西宜春丰城市从农村小学转岗教师到农村中学招聘29人备考题库及完整答案详解(网校专用)
- 2026广东广州美术学院F202652中国画(花鸟)专任教师考前冲刺密卷附参考答案详解【培优】
- 2026福建福州市鼓楼区文体旅局招聘1人考前冲刺试卷附答案详解(综合题)
- 2026安徽池州东至县乡村振兴就业见习人员招聘99人笔试题库(易错题)附答案详解
- 2026年廉洁从业教育培训测试题及答案
- 2026年吉林省国资委监管企业2026年度第一次集中招聘(613人)考试备考题库及答案详解
- 金融赋能:我国城镇化建设中金融发展与城镇化关系的深度剖析与实证研究
- 二年级孤独的小螃蟹故事
- 代理记账100问(完整版带答案)
- TSG 08-2026 特种设备使用管理规则
- 危化品企业法人责任制度
- 快递网点管理制度牌
- jb-qb-5ei型火灾报警控制器使用说明书(船用)v2.0
- 天平代换课件
- 一河一策合同范本
评论
0/150
提交评论