第一部分:理论知识学习部分

第三章 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.大数值

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

*BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点运算。

9.数组

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

*对元素的确定是由数组名和它的下标实现的,

如a[0]代表数组a的第一个元素,a[1]代表数组
a的第二个元素,依次类推。

第二部分:实验部分

实验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)

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

结果:

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

public class Mes

{

public static void main(String[] args)

{

if (args[0].equals(“-t”))

System.out.print(“today”);

else if(args[0].equals(“-m”);

System.out.print(“morning,”);

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掌握循环控制结构;

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

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

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

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

实验总结:

通过本周的学习,我掌握了java程序设计的基本知识,学习了数据类型,变量,运算符,类型转换,字符类型,输入输出,控制流程,大数值以及数组等相关知识。在实验课中,我能够更加熟练的运用命令行方式(dos)来运行程序,并强化了自己使用集成开发平台(eclipse)来编写,导入以及运行程序的能力。在具体的实验操作中,我认识到程序中的标识符非常重要,如果输入错误或者放在不正确的位置,很有可能导致程序运行时产生错误。另外,在实验中,我掌握了更多的语法,逐渐看懂了一些程序的含义,并且认识到这是一门与C语言联系密切,和其它语言类课程一样,极其需要自主学习的课程。因此,我会在课下花更多的时间学习这门课程。,我进一步熟悉了命令行和IDE两种方式下java程序开发的基本步骤,掌握了Eclipse集成开发环境下导入Java源程序的过程,掌握了Java语言构造基本程序的数据类型、变量、运算符、各类表达式、输入输出、流程控制的基本语法,掌握了String类、StringBuilder类、数组类的用法。

周强 201771010141 《面向对象程序设计(java)》 第二周学习总结的更多相关文章

  1. 周强 201771010141面向对象程序设计(java)》第十七周学习总结

    线程同步 多线程并发运行不确定性问题解决方案:引入线 程同步机制,使得另一线程要使用该方法,就只 能等待. ⚫ 在Java中解决多线程同步问题的方法有两种: 1.- Java SE 5.0中引入Ree ...

  2. 201771010141 周强《面向对象程序设计(java)》第十三周学习总结

    实验目的与要求 (1) 掌握事件处理的基本原理,理解其用途: (2) 掌握AWT事件模型的工作机制: (3) 掌握事件处理的基本编程模型: (4) 了解GUI界面组件观感设置方法: (5) 掌握Win ...

  3. 201771010141 周强《面向对象设计 java》第十五周实验总结

    理论部分 ◼ JAR文件◼ 应用程序首选项存储◼ Java Web Start JAR文件: 1.Java程序的打包:程序编译完成后,程序员将.class文件压缩打包为.jar文件后,GUI界面程序就 ...

  4. 201871010136-赵艳强《面向对象程序设计(java)》第十五周学习总结

    201871010136-赵艳强<面向对象程序设计JAVA>第十五周实验总结   项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh 这 ...

  5. 周强201771010141《面向对象程序设计(java)》第一周学习总结

    周强201771010141<面向对象程序设计(java)>第一周学习总结 第一部分:课程准备部分 填写课程学习 平台注册账号, 平台名称 注册账号 博客园:www.cnblogs.com ...

  6. 201871010136 -赵艳强《面向对象程序设计(java)》第十六周学习总结

    201871010136-赵艳强<面向对象程序设计(java)>第十六周学习总结   项目 内容 这个作业属于哪个课程 <任课教师博客主页链接>https://www.cnbl ...

  7. 201871010136-赵艳强《面向对象程序设计(java)》第十二周学习总结

    201871010136-赵艳强<面向对象程序设计(java)>第十二周学习总结   项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh ...

  8. 201871010136—赵艳强《面向对象程序设计(java)》第十三周学习总结

    201871010136—赵艳强<面向对象程序设计(java)>第十三周学习总结   博文正文开头格式:(2分) 项目 内容 <面向对象程序设计(java)> https:// ...

  9. 201871010136-赵艳强《面向对象程序设计(Java)》第八周学习总结

    201871010136-赵艳强<面向对象程序设计(Java)>第八周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这 ...

  10. 201871010136-赵艳强《面向对象程序设计(java)》第六,七周学习总结

            201871010136-赵艳强<面向对象程序设计(java)>第六七周学习总结 项目 内容 这个作业属于哪个课程 <任课教师博客主页链接> https://w ...

随机推荐

  1. Kafka学习之(二)Centos下安装Kafka

    环境:Centos6.4,官方下载地址:http://kafka.apache.org/downloads  ,前提是还需要安装了Java环境,本博客http://www.cnblogs.com/wt ...

  2. Html ul、dl、ol 标签

    Html ul.dl.ol 标签 <html> <body> <!-- ul 标签指定字符断点,左边带一个“·”点--> <ul> <!-- li ...

  3. 03:CDN原理

    1.1 CDN简介 1.CDN作用(缓存静态资源) 1. CDN的全称Content Delivery Network,(缩写:CDN)即内容分发网络. 2. CDN解决由于网络带宽小.用户访问量大. ...

  4. 通过WireShark抓取iPhone联网数据方法

    通过WireShark抓取iPhone联网数据方法 命令行 rvictl -s <UDID> 然后再wireshark选择rvi0进行抓包即可 抓包完后,移除用命令 rvictl -x & ...

  5. 【BZOJ2301】Problem B

    Description 对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y) = k,gcd(x,y)函数为x和y的最大公约数. Input 第一行一个整数 ...

  6. 第十届蓝桥杯2019年C/C++ 大学B组省赛试题

    2019年第十届蓝桥杯大赛软件类省赛C/C++大学B组 试题 A:组队 本题总分:5分 [问题描述] 作为篮球队教练,你需要从以下名单中选出 1号位至 5号位各一名球员, 组成球队的首发阵容. 每位球 ...

  7. 【JS】Js对json的转换

    将json字符串转换为json对象的方法.在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键 例如: JSON ...

  8. Microsoft Visual Studio已停止工作

    问题:今天在安装Visual Studio时,提示“Visual Studio installer 已停止工作” 解决办法:卸载原有的 .net  framework,在微软官网下载 .net fra ...

  9. WordPress上传到互联网搭建

    1.建站流程: 1.购买域名 2.购买空间 3.解析绑定 4.上传安装 2.购买域名 域名的购买可以到相关域名出售的服务商那儿买,如阿里云,主机庙.这里就不做详细解释了 3.购买空间 域名的购买可以到 ...

  10. [Hibernate] hibernate.cfg.xml 配置文件的一些设置

    <!-- 消除:Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect. ...