第一部分 理论知识的学习

第三章Java基本程序设计结构

1  基本知识:

(1)标识符:标识符由字母、下划线、美元符号和数字组成,且第一个符号不能为数字。Hello、$1234、程序名、www_123都是合法标识符。

标识符可用作类名、变量名、方法名、数组名、文件名等。

(2)关键字:关键字就是Java语言中已经被赋予特定意义的一些单词。 常见有:class、public、try、catch、if、float、import、void等。关键字不做变量名。

(3)注释:Java有三种注释的方式:

1. //

注释内容由//一直到此行结束。

2. /*和*/

定义一个注释块。

3. /**开始,*/结束

这种注释方法可用来自动产生文档

  1. 数据类型

Java是一种强类型语言。这意味着每一个变量必须声明一种为类型。Java共有8种基本类型

– 整数类型

int(内存分配个4字节,占32位,取值范围-231 ~ 231-1。)

变量定义:int x;  定义同时可赋值:int height=180

short(内存分配2个字节,占16位,取值范围-215 ~215-1)

变量定义:short h;   定义同时可赋值:short m=12

long(内存分配8个字节,占64位,取值范围-263 ~263-1)

变量定义:long sum    定义同时可赋值:long sum=343435L;

byte(内存分配个1字节,占8位,取值范围-27 ~ 27-1。)

变量定义:byte w      定义同时可赋值:byte x=12, y=24,

– 浮点类型

float(内存分配4个字节,占32位,有效小数位数为6~7)

变量的定义:float x   定义时赋初值 :float x1=12.23f

double(内存分配8个字节,占64位,有效小数位数为15)

变量定义:double d    定义时可以赋初值:double d1=12.23

表示溢出和出错的三种特殊的浮点数值:1.正无穷大   2.负无穷大l 3.NaN(非数字)

– 字符类型 (char)

变量定义:char q     定义同时可赋值:char c=‘a’, type, cat

Java 采用unicode字符编码集,该编码集16位,含有65536个字符。

– 布尔类型(boolean )

变量的定义:boolean x;    定义同时可赋值:boolean x=true

在Java中,布尔值和整数不能相互转换。

Java中没有unsigned类型

  1. 变量

在Java中,每一个变量属于一种类型。在声明变量时,变量所属的类型位于变量名之前。

在Java中,一行可以声明多个变量。逐一声明每一个变量可以提高程序的可读性。

(1)变量初始化

一个变量声明后,必须通过赋值语句对它进行明确的初始化——永远不要使用一个未初始化的变量的值。

在Java中,不能在同一作用域内声明两个同名的变量

(2)常量的定义

在Java中,使用关键字final来指示常量。习惯上常量名都用大写

关键字final表示只能对变量赋一次值,其值一旦设定,便不能改。

  1. 运算符

运算符有各种运算符、运算符的优先级与结合性以及数学函数与常量

各种运算符包括算数运算符、自增自减运算符、关系运算符、逻辑运算符与位运算符。而且各种运算符与面向对象运算相关。

  1. 类型转换

类型转换分为隐函式类型转换与强制性类型转换

  1. 隐式类型转换:大多数的数值转换是遵循优先级的关系自动完成的。

如果两个操作数中有一个是double类型的,则另一个将会转换成double类型。

如果两个操作数中有一个是float类型的,另一个会转换成float类型。

如果两个操作数中有一个是long类型的,另一个将会转换成long类型。

两个操作数都将转换成int类型。

  1. 强制类型转换:强制类型转换的语法:(目标类型)变量名

  1. 字符串

Java字符串是Unicode字符的序列,它是组织字符的基本数据结构,用法类似于字符数组。例如:String s = “Hello world!”

u 有内置的字符串类型,而是在标准Java类库中提供了一个Java预定义类String。在Java中,字符串被当作对象来处理。

(1)获得字符串的子串(2) 串连接(+)(3)获取字符串的长度(4) 检测字符串是否相等(5) 字符串检索 字符串与数值的转化

程序中需要用到的字符串可以分为两大类:

– 创建之后不会再做修改和变动的不可变字符串String类;

– 创建之后允许再做更改和变化的构StringBuilder类。

  1. 输入输出

分为读取输入、格式化输出和文件输入与输出。

  1. 控制流程

Java语句(复合语句、控制语句和impothe packege语句)、条件语句(if、switch)、循环语句(while 、do-while、for)、中断控制流程语句(break、continue)、返回语句(return value)

  1. 大数值

如果基本的整型和浮点型数据无法达到要求的精度,那么可以使用 java.math 包中的两个类,BigInteger和BigDecimal。这两个类可以操作任意长的数字

  1. 数组

数组是一种数据结构,它是有序数据的集合,数组中的每个元素的数据类型都是相同的。

第二部分 实验部分

实验1:编写java 应用程序,输出以下4个表达式的值。

int i=1;

double d=1.0;

(1) 45+45*50%i--

(2) 1.5*3+d++

(3) (true)&&(3>4)

(4) (i>0)||(i<0)

在Eclipse上编写下列程序的代码,输出结果如下图所示:

实验2:编写包含以下代码片段的java应用程序,输出字符串类对象s3的值。

String s1=“Hello!”;

String s2=“World”;

String s3=s1+s2;

在Eclipse上编写下列程序的代码,输出结果如下图所示:

实验3:更改实验2中s1、s2、s3为StringBuilder类对象,观察程序运行结果并与实验2结果进行对比,理解String类对象与StringBuilder类对象的区别。

实验4:在命令行方式下调试运行下列程序,理解java应用程序命令行参数的用法。

public class Message

{

public static void main(String[] args)

{

if (args[0].equals(“-h”)) System.out.print(“Hello”);

else if(args[0].equals(“-g”); System.out.print(“goodbye,”);

for(int i=1;i<args.length;i++)

System.out.print(“  ”+args[i]);

System.out.println(“!”);

}

}

实验5:Eclipse环境下导入第3章示例程序InputTest.java步骤:

(1) 新建java project如下图:

(2) 选择File->import->File ystem->Next,打开文件导入窗口如下图,点击上方Browse选择导入源程序并选中,点击下方Browse选择源程序导入位置为新项目InputTest/src位置后,点击finish完成导入。

(3) 打开InputTest项目src文件夹的缺省包,双击InputTest.java在IDE源程序编辑区打开文件。

(4) 右键单击InputTest.java文件名打开快捷菜单,选择Run as->java application运行此程序,结合程序运行结果,理解代码中Scanner类对象用法,掌握java控制台输入方法。

实验6按照实验5的操作步骤,导入WriteReadFileTest.java示例程序,结合程序运行结果理解程序代码,观察项目文件夹下文件myfile.txt的内容,掌握文件的输入输出操作。

实验7:按照实验5的操作步骤,导入第3章示例程序,每个示例程序从语法、算法两个角度总结学习内容。

(1)测试Retirement.java,Retirement2.java,LotteryOdds.java掌握循环控制结构;

Retirement.java

Retirement2.java

LotteryOdds.java

(2)测试BigIntegerTest.java,掌握大数值类的用法;

(3)测试LotteryDrawing.java,掌握数组的用法;

(4)测试CompoundInterest.java,掌握多维数组的用法;

(5)测试LotteryArray.java,掌握不规则数组的用法。

总结:在第三单元的学习中,我们系统的学习了有关java的基础知识,对构建java语句有一定的了解及掌握,但不够熟悉,在之后的学习中应多加练习。

在实验内容部分中,我学会了如何在IDE当中导入源程序,通过过测试代码的合法性,在实例中学习基础语句的作用及其表达。因为与c语言高度的相似性,所以并不难理解,但在熟练掌握方面还不够。在实验示例中有部分程序还了解不是很透彻,需要多查资料去了解及掌握。每次自主试验都会有收获,但是困难就更难去解决,我会一步步把掌握的和不懂的都解决。

转载于:https://www.cnblogs.com/maxinlu/p/9612782.html

201771010118马昕璐相关推荐

  1. 201771010118马昕璐《面向对象程序设计java》第八周学习总结

    第一部分:理论知识学习部分 1.接口 在Java程序设计语言中,接口不是类,而是对类的一组需求描述,由常量和一组抽象方法组成.Java为了克服单继承的缺点,Java使用了接口,一个类可以实现一个或多个 ...

  2. 马昕璐201771010118《面向对象程序设计(java)》第七周学习总结

    第一部分:理论知识学习部分 Java用于控制可见性的4个访问权限修饰符: 1.private(只有该类可以访问) 2.protected(该类及其子类的成员可以访问,同一个包中的类也可访问) 3.pu ...

  3. 第三周java实验报告

        实验三 Java基本程序设计(2) 实验时间 2018-9-13 第一部分:理论知识回顾 第一章 再次了解了java"白皮书"的关键术语,java的常见术语,对于大多数&q ...

  4. 第十八届全国大学智能汽车竞赛报名信息统计

    01 报名信息 一.前言   截止到 2023年6月15日, 第十八届全国大学生智能车竞赛 竞速比赛 报名阶段接近尾声. 参赛赛队伍在 竞赛网站 按照 竞赛网络报名方法 进行了注册, 并提交了队伍参赛 ...

  5. 第十八届全国大学智能汽车竞赛报名信息统计:华北赛区报名队伍

    承办学校: 太原工业学院 比赛时间: 7月17日-19日 第十八届全国大学智能汽车竞赛报名信息统计 01 报名队伍 序号 组别 学校 队伍名称 学生1 学生2 学生3 学生4 学生5 教师1 教师2 ...

  6. 哈工大计算机学院2019届,哈尔滨工业大学2019届优秀毕业生候选人评选结果公示...

    根据学校本部通知精神,经学生个人申请.各学院评审.校区审批,深圳校区评选等65名同学为哈工大2019届优秀毕业生,具体名单如下: 计算机科学与技术学院(6人):陈荻.郭涵.陆佳杰.石雪.文杰.熊英 电 ...

  7. 文章内容中表格宽度超过内容区自动在外层添加div和样式并在电脑端可滑动浏览

    HTML部分: <div class="newscon" id="conbox"> <table> <tbody><t ...

  8. 包装世界杂志包装世界杂志社包装世界编辑部2023年第2期目录

    视觉新语 感知体验下的救护车交互设计研究 (1) 张帅;史庆学     乡村振兴战略下装配式建筑在农村的应用途径 (4) 王霁云     基于自我意识发展的幼儿园可折叠床铺设计 (7) 黄诗淇     ...

  9. 艺术科技杂志社《艺术科技》编辑部SCD期刊2023年第7期目录查阅

    基金课题 沉浸式虚拟现实阅读对用户体验的影响研究 (1) 傅恋群;徐义;张炜     惠山泥人艺术特点及传承发展研究 (4) 吴飞翔     从<汉江韵>谈中州筝派的审美传承与创新 (7) ...

最新文章

  1. VMware 扩展磁盘容量
  2. vs.net 2003 错误:无法生成项目输出组“内容文件来自stuschool(活动)”
  3. dotnet 基于 dotnet format 的 GitHub Action 自动代码格式化机器人
  4. 翻译记忆软件:Trados 7/2006,兼容性和基本用法讨论
  5. 扫地机器人的特点描写_扫地机器人的特点和作用
  6. 数据结构--队列、双端队列实际举例详解(Python代码)
  7. Ceph的客户端安装
  8. 在eclipse中使用第三方库总结
  9. windows10上Eclipse运行MapReduce wordcount程序遇到的坑
  10. cache性能优化总结
  11. C语言基础视频教程-欧阳坚-专题视频课程
  12. python生成图表
  13. 罗永浩演讲有趣的PPT
  14. 服务器名称指示(SNI)是什么东东?
  15. c/c++中的内存分配器
  16. 不成熟的男人的爱情观——知乎上另一个关于不成熟男人的见解
  17. 计算机应用技术博士,全国新增所大学计算机应用技术博士点
  18. Redis中List数据类型
  19. 第三届“成思危社会企业奖”揭晓暨助力东北振兴对话会圆满举办
  20. hdu 4489 The King’s Ups and Downs 组合 递推

热门文章

  1. 电商系统的自提订单,提货流程如何设计
  2. 深度学习pytorch--多层感知机(三)
  3. html 定时刷新 数据,js中,设置定时器 每隔几秒刷新一次页面数据
  4. android activity 显示无焦点_Android面试题集锦之fragemnt
  5. 计算机知识小技巧,计算机知识---基本操作小技巧.pptx
  6. mysql优化 运维_MySQL运维---MySQL优化
  7. 0与1世界的初级编程篇之C语言
  8. c语言的输入函数有哪些
  9. python网络编程项目_python网络编程详解
  10. android 活动销毁不了,即使活动已经销毁,AsyncTask也不会停止