王玉兰201771010128实验二 Java基本程序设计
第一部分:理论知识学习部分:
(1)标识符:标识符由字母、下划线、美元符号和数字组成,且第一个符号不能为数字。Hello、$1234、程序名、www_123都是合法标识符。标识符可用作类名、变量名、方法名、数组名、文件名等。
(2)关键字:关键字就是Java语言中已经被赋予特定意义的一些单词。 常见有:class、public、try、catch、if、float、import、void等。关键字不做变量名。
(3):注释:Java有三种注释的方式:
A: //
注释内容由//一直到此行结束。
B: /*和*/
定义一个注释块。
C:/**开始,*/结束
这种注释方法可用来自动产生文档
(4)数据类型
1:Java可区分为基本类型(Primitive Type)和类类型(Class Type),其中类类型也叫参考类型(Reference Type)。
2:字节类型,也叫byte类型,长度为1字节,一般在需要逐字节处理数据时(如图形处理、编码处理等)。
3:整数又可细分为4种,按照在内存中占用空间的大小可分为:short整数(占2字节)、int整数(占4字节)与long整数(占8字节)。浮点数用来表示小数,可分为float型(占4字节)和double型(占8字节)。
4:字符char类型则用来存储一些字符符号,每个字符占2字节,汉字字符与英文字符在Java中都是用双字节储存。
5:布尔:只有true和false两种表示。
6:在JDK5之后,有了printf(),这比较类似C语言中的打印输出语句,其用法也和C语言中的基本一致,需要通过一些格式控制符号来对输出的格式类型进行设置。
(5)变量
1:变量也好理解,就是在内存中取一个空间,并对其声明类型和命名,而这个空间就是我们说的变量,可以储存相应类型的数据。
2:关于变量的命名,一般按照驼峰式(Camel Case)命名的方法,以小写字母开始,并在每个单字开始时第一个字母使用大写。
3:关于变量的使用,在调用变量之前,一定要对该变量进行初始化,即给变量要指定值后才能使用;
4:在表示数字常量时,用0b表示二进制数,用0x表示十六进制数。
(3)运算符
1:在逻辑运算符中,&&的特点在于如果&&左边为假,则不论右边真值如何,其逻辑判断返回结果为假;同样的,||的特点在于如果||的左边为真,则不论右边真值如何,其逻辑判断返回结果为真。这在一定的程度上还是能提高代码的编译执行效率。
2:在递增、递减运算符中,就要注意运算符是放在变量的左边还是右边,如果运算符在变量左边,则先改变变量值再进行运算,如果运算符在变量右边,则先进行运算再对变量进行相应的加减变化。
(4)类型转换
1:类型与变量看似简单,但是很多时候编译不通过,可能就是这些细节不注意。Java中对变量类型区分是非常严格的,在不特别指明的情况下,整数一般为int类型,小数则默认为double型,如果不特别注意这些就容易犯错。另一种情况,就是不同类型的操作数在进行运算时要遵循一些原则。如果操作数都是不大于int的整数,则自动全部提升为int类型进行运算;如果运算时,类型不相同,则运算时会以最长的类型为主。
(5)流程控制
if...else条件式
a:需要注意的是一定要把执行的语句用花括号括起来,否则,默认的是只执行if后的第一句。
switch条件式
b:switch有点像多个分支的if语句,但在某些情况下,用switch可以提高代码的效率,书本上也有相应的例子,不用进入每个if语句去判断,可以通过待判断的值直接进入相应的case,只是注意switch一般都会配以break一起使用,编写代码时不能忘记这一点。
for循环
c:与C语言中的for循环基本一样,写代码时养成先写##for(;;)##的习惯,这样不会漏必要的元素,如果判断部分没有任何说明,则默认是true,即是一个无限循环。
while循环
a:当型循环:while(条件式){描述句},先判断条件式的布尔类型,如果成立,则执行描述句。
b:直到型循环:do{描述句}while(条件式);,特点是先执行一遍描述句,再判断条件,如果条件成立就再执行一遍描述句,直到条件不成立为止。
c:需要注意的是:while的两种类型的区别,在写法上,注意当型while后没有分号,第二种有分号。
break continue
a:break:结束当前循环。
b:continue: 跳过当前循环一次。
c:break、continue还可以和标签一起配套使用。break与标签配套时,则结束该标签包含的所有语句;continue与标签配套时,则跳过该标签包含的所有语句。
(6)字符串: Java字符串是Unicode字符的序列,它是组织字符的基 本数据结构,用法类似于字符数组。有内置的字符串类型,而是在标准Java类库中提供了一 个Java预定义类String。程序中需要用到的字符串可以分为两大类:创建之后不会再做修改和变动的不可变字符串String类;创建之后允许再做更改和变化的构建字符串StringBuilder类。
(7)数组是一种数据结构,是有序数据的集合数据中每个元素的数据类型都是相同的。java中数组是独立类,有自己的方法,一个数组是一个对象,数组申明之后要用new运算符为其分配内存空间,分配内存空间时必须指明数组的长度。
第二部分:实验部分:
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的结果:
Retirement.java2 的结果:
(2)测试BigIntegerTest.java,掌握大数值类的用法;
实验结果:
(3)测试LotteryDrawing.java,掌握数组的用法;
实验结果:
(4)测试CompoundInterest.java,掌握多维数组的用法;
实验结果:
(5)测试LotteryArray.java,掌握不规则数组的用法。
实验结果:
实验总结:本次的实验比起第一次相比好一点,在老师课堂上讲解数据类型,变量,运算符等知识进一步巩固,在C语言当中学过,老师区分了与它的不同之处。在实验课上,也跟随老师初步掌握乐String类,StringBuilder类,和数组类的用法。但是对程序的语言含义还并不是很理解,需要自己下功夫,自主学习的过程中不断像老师和同学和学长请教,只有自己不断努力,才能有所收获,日积月累才是见证最终的能力所在。
王玉兰201771010128实验二 Java基本程序设计的更多相关文章
- 20162321王彪-实验二-Java面向对象程序设计
实验二Java面向对象程序设计 实验内容一 初步掌握单元测试和TDD 什么是单元测试:单元测试时开发者编写的一小段代码,用于检测被测代码的一个很小的,很明确的功能是否正确.执行单元测试,是为了证明某段 ...
- 实验二Java面向对象程序设计实验报告(2)
实验二 Java面向对象程序设计 实验概述: 课程:程序设计与数据结构 班级:1623班 姓名: 邢天岳 学号:2309 指导老师:娄老师 王老师 实验日期:2017.4.16 实验名称: Java面 ...
- 实验二 Java面向对象程序设计
实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...
- 20145213《Java程序设计》实验二Java面向对象程序设计实验报告
20145213<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装,继承,多态 初步掌握UML建模 熟悉S.O. ...
- 20145206《Java程序设计》实验二Java面向对象程序设计实验报告
20145206<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...
- 20145308刘昊阳 《Java程序设计》实验二 Java面向对象程序设计 实验报告
20145308刘昊阳 <Java程序设计>实验二 Java面向对象程序设计 实验报告 实验名称 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面相对象三要素:封 ...
- 20145113 实验二 Java面向对象程序设计
20145113 实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 1.初 ...
- JAVA课程实验报告 实验二 Java面向对象程序设计
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1353 姓名:韩玉琪 学号:20135317 成绩: 指导教师:娄嘉 ...
- 20145225唐振远 实验二 "Java面向对象程序设计"
20145225<Java程序设计> 实验二 Java面向对象程序设计 实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S ...
随机推荐
- 徐州H
#include<bits/stdc++.h> using namespace std; #define rep(i,a,b) for(int i=a;i<=b;++i) #defi ...
- k8s namespace限制调研
1.创建namespace gpu 2.增加限制 [root@tensorflow1 gpu-namespace]# cat compute-resources.yaml apiVersion: v1 ...
- 深入理解Mysql——锁、事务与并发控制
本文对锁.事务.并发控制做一个总结,看了网上很多文章,描述非常不准确.如有与您观点不一致,欢迎有理有据的拍砖! mysql服务器逻辑架构 每个连接都会在mysql服务端产生一个线程(内部通过线程池管理 ...
- axis2 411
返回411加个这个就行了 _operationClient.getOptions().setProperty(HTTPConstants.CHUNKED, false); 本文转自 cd1989929 ...
- ajax学习摘抄笔记
2019独角兽企业重金招聘Python工程师标准>>> AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). A ...
- predixy源码学习--开篇
最近开始研究predixy.predixy是一款高性能全功能redis代理 ,网上有的文章大部分都是功能上的介绍,很少有源码相关的分享. predixy的相关介绍在github: https://gi ...
- 1) drf 整体了解
一.接口 """ 1.什么是接口:url+请求参数+响应数据 | 接口文档 2.接口规范: url:https,api,资源(名词复数),v1,get|post表示操 ...
- 04 全局局部配置 wxml数据绑定 事件 冒泡
一. 配置介绍 一个小程序应用程序会包括最基本的两种配置文件.一种是全局的 app.json 和 页面自己的 page.json(index.json /test.json等) 注意:配置文件中不能出 ...
- ASP.NET Core的配置信息
ASP.NET Core的配置信息 Key-Value键值对 内存里.JSON.XML.INI等文件 配置信息与配置系统是解耦的 可以依赖注入 ASP.NET Core的配置信息来源 appsetti ...
- 就没有我遇不到的报错!java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/filter/Filter
本来准备用HBase的Bulkload将HDFS的HFile文件导入到HBase的myuser2表中,用的是yarn jar的命令 yarn jar /export/servers/hbase-1.2 ...