李婷华 201771010113 《面向对象程序设计(java)》 第二周学习总结
第一部分:理论知识学习部分
第三章 java的基本程序设计结构
本章主要学习数据类型、变量、运算符、类型转换、字符串、输入输出、控制流程、大数值、数组等内容。
1.基本知识
(1)标识符:由字母、下划线、美元符号和数字组成,且第一个符号不能为数字。标识符可用作类名、变量名、方法名、数组名、文件名等。
(2)关键字:java语言中被赋予特定意义的一些单词。关键字不做变量名。
(3)注释:java语言有三种注释。//、/* */、/** */。
2.数据类型
每一个变量必须声明一种类型。java共有八种基本类型。
(1)整数类型(int,short,long,byte)java中没有unsigned类型。
(2)浮点类型(float,double)
(3)字符类型(char)
(4)布尔类型(boolean)。java中布尔值和整数值不能相互转换。
3.变量
java中每一个变量属于一种类型。声明变量时,变量所属类型位于变量名之前。一行可以声明多个变量,逐一声明每个变量可以提高程序的可读性。一个变量声明之后,必须通过赋值语句对它进行明确的初始化。可以在代码的任何位置进行变量声明。不能在同一作用域内声明两个同名的变量。java中关键字final来指示常量。习惯上常量名都用大写。
4.运算符
算术运算符、自增运算符与自减运算符、关系运算符、逻辑运算符、位运算符。new(用来创建对象的运算符)、Instanceof(返回一个布尔值来指出某个对象是否是一个特定类或者是它的子类的一个实例)。
5.类型转换
(1)隐式类型转换
(2)强制类型转换
6.字符串
java字符串时Unicode字符的序列,是组织字符的基本数据结构,用法类似于字符数组。没有内置的字符串类型,而是在标准java类库中提供了一个java预定义类。在java中字符串被当做对象来处理。
(1)String类
获得字符串的子串、串连接、获取字符串的长度、检测字符串是否相等、字符串检索、字符串与数值的转换、获得对象的字符串表示。
(2)StringBuilder类
分配/获取字符串的长度、分配/获取字符串的容量、字符串的检索和子串、字符串的修改、字符串类型转换。
7.输入输出
(1)读取输入
通过控制台进行输入时,需要构造一个Scancer对象,并与“标准输入流”System.in关联。
(2)格式化输出
使用System.out.print(x)将数值输出到控制台上这条命令将以x对应的数据类型所允许的最大非零数字位数打印输出x。
(3)文件输入与输出
要想对文件进行读取,就需要一个用File对象构造一个Scanner对象。
要想写入文件就需要构造一个PrintWriter对象,在构造器中只需提供文件名。
8.控制流程
(1)方法调用语句
(2)表达式语句
(3)复合语句
(4)控制语句
条件语句:if语句,switch语句。
循环语句:while、do-while、for。
(5)中断控制流程语句:break、continue。Java中没有goto语句。
(6)返回语句 return value
9.大数值
Java.math包中的两个类Biglntegre、BigDecimal可以操作任意长的数字。Biglntegre实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点运算。
10.数组
数据是一种数据结构,是有序数据的集合数据中每个元素的数据类型都是相同的。
(1)数组的声明
一维数组 数组元素类型 数组名字[]
二维数组 数据元素类型 数组名字[][]
Java中数组是独立类,有自身的方法。一个数组是一个对象。
(2)数组的创建
数组声明之后要用new运算符为其分配内存空间,分配内存空间时必须指明数组的长度。格式如下:数组名字=new 数组元素类型[个数]
(3)数组初始化及匿名数组
一维数组初始化:在声明数组的同时对数组的元素进行初始化。在java中可以初始化一个匿名数组。
多维数组的初始化:系统会自动根据初始值的大小计算出数组的大小。
(1)数组的操作
数组的拷贝:java允许把一个数组变量拷贝给另一个变量时,两个变量都指向相同的数组。如果只是想把一个数组中的值拷贝给另一个变量,就要使用Arrays类的copyOf方法,通过这个方法可以用来增加数组大大小。
数组排序:调用java.util.Arrays类中的sort方法。该方法采用优化快速排序方法。
(2)不规则数组:每一行有不同的长度。创建不规则数组时,从最高维开始分别为每一维数组分配空间。
第二部分 实验部分
1.实验目的与要求
(1)进一步熟悉命令行和IDE两种方式下java程序开发的基本步骤;
(2)掌握Eclipse集成开发环境下导入Java源程序的过程;
(3)掌握Java语言构造基本程序的数据类型、变量、运算符、各类表达式、输入输出、流程控制的基本语法;
(4)掌握String类、StringBuilder类、数组类的用法。
2.实验内容和步骤
实验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) |
实验结果:

实验2 编写包含以下代码片段的java应用程序,输出字符串类对象s3的值。
|
String s1=“Hello!”; String s2=“World”; String s3=s1+s2; |
实验结果:

实验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,掌握不规则数组的用法。
实验结果:

3.实验总结
通过本章的学习,我学到了标识符、关键字、注释等基本知识,学习了数据类型、变量、运算符、类型转换、字符串、输入输出、控制流程、大数值、数组等内容。java的一些基础知识跟C语言非常相似,当然也有一部分是有区别的。在实验的过程中,忽略了数组越界问题,导致实验四的结果不正确,在老师的帮助下,最终解决了这个问题,当传入正确的参数之后,这个问题就解决了。在java的学习过程当中,只有不断的动手编写java程序才能更好的理解所学的理论知识,才能学好java。
李婷华 201771010113 《面向对象程序设计(java)》 第二周学习总结的更多相关文章
- 20172325 2018-2019-1 《Java程序设计》第二周学习总结
20172325 2018-2019-1 <Java程序设计>第二周学习总结 教材学习内容总结 3.1集合 集合是一种聚集.组织了其他对象的对象.集合可以分为两大类:线性集合和非线性集合. ...
- 20172321 2017-2018-2 《Java程序设计》第二周学习总结
20172321 2017-2018-2 <Java程序设计>第二周学习总结 教材学习内容总结 第一章要点: 要点1 字符串:print和println用法的区别,字符串的拼接,java中 ...
- 20145326《Java程序设计》第二周学习总结
20145326<Java程序设计>第二周学习总结 教材学习内容总结 本周学习教材第三章,本章主要讲述了java语言中的一些基础语法,java是个支持面向对象的程序语言,但在正式进入面向对 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 《Java程序设计》第二周学习总结
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
- 20155304田宜楠 2006-2007-2 《Java程序设计》第二周学习总结
20155304田宜楠 2006-2007-2 <Java程序设计>第二周学习总结 教材学习内容总结 一.类型与变量 1.类型 整数: 可细分为为short整数(占2字节),int整数(占 ...
- 201521123038 《Java程序设计》 第二周学习总结
201521123038 <Java程序设计> 第二周学习总结 1.本章学习总结 学会在Java程序中使用函数,使程序层次更清晰 使用StringBuilder编写代码,减少内存空间的占用 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
- 20175204 张湲祯 2018-2019-2《Java程序设计》第二周学习总结
20175204 张湲祯 2018-2019-2<Java程序设计>第二周学习总结 教材学习内容总结 -第二章基本数据类型与数组要点: -标识符与关键字:标识符的第一个字符不能是数字字符: ...
随机推荐
- AJ学IOS(24)UI之注册案例
AJ分享,必须精品 先看效果 制作思路 在做这个的时候,首先用stroyboard画出来界面UI,这个很简单,不多说了,然后下一步就是自定义xib做键盘上面的那一栏了,需要自己做xib还有view,详 ...
- Docker+Cmd+Cli+Git之前端工程化纪要(二)自定义类package.json文件管理模块包
全新升级后的FE工作流为:使用FE命令包进行项目的初始化,其中包括项目初始化.拉取脚手架.私库拉取模块包或后期扩展的CI/CD等与本公司工作流相关的操作. 出现的问题如下: 脚手架工具的包依赖信息存放 ...
- 借助Python来实现的定量城市研究
一.数据处理基础 (一)数据分析的概念 城市数据分析,可以从数据分析的广义和狭义两个角度来看: 狭义的数据分析是指根据分析目的,采用对比分析.分组分析.交叉分析和回归分析等分析方法,对相关城市数据(包 ...
- web测试流程
1.立项后测试需要拿到文档(需求说明书,原型图,接口文档,) 2.需求评审 3.用例编写(主流程,备流程,异常流,业务规则,正常类,异常类,页面检查) 测试用例编写方法(等价类划分,边界值分析法,错误 ...
- ESI web学习记录
Ezbypass 解出 放在php新特性的文章最后了,利用json反序列化脚本绕过disable_functions来get flag Ezupload 没解出 登陆页面查看源代码发现,备份文件泄露. ...
- AJAX教程——检视阅读
AJAX教程--检视阅读 参考 AJAX 教程--菜鸟 AJAX 教程--w3cschool AJAX 教程--w3school.cn AJAX 教程--易百 AJAX = Asynchronous ...
- Spark SQL源码解析(三)Analysis阶段分析
Spark SQL原理解析前言: Spark SQL源码剖析(一)SQL解析框架Catalyst流程概述 Spark SQL源码解析(二)Antlr4解析Sql并生成树 Analysis阶段概述 首先 ...
- 调用ocx ActiveX控件详解(做一个简单的ocx控件)
背景 最近做的项目都和插件有关,就是在页面中调用插件的方法,然后进行操作. 插件就是ocx ActiveX控件,具体的说明可以自己去了解一下,在这里就不做赘述. 具体调用方式很简单: 1.在页面中写一 ...
- centos7下端口映射
firewall-cmd --zone=external --add-forward-port=port=:proto=tcp:toport=:toaddr=192.168.10.10 --perma ...
- Manjaro Linux 入门使用教程
Manjaro 初体验 Manjaro 是一款基于 Arch LInux 的自由开源发行版,它吸收了 Arch Linux 优秀丰富的软件管理,同时提供了稳定流畅的操作体验.优雅简单是它的追求,稳定实 ...