201871010107-公海瑜《面向对象程序设计(java)》第二周学习总结html
项目 | 内容 |
这个做业属于哪一个课程 |
https://www.cnblogs.com/nwnu-daizh/ |
这个做业的要求在哪里 | https://www.cnblogs.com/nwnu-daizh/p/11475377.html |
做业学习目标 | 1.适应老师教学方式,能按照自主学习要求完成本周理论知识学习;java 2.掌握Java Application程序结构;算法 3.掌握Java语言的数据类型与变量;数组 4.学会使用Java运算符构造各种表达式;浏览器 5.掌握Java Application输入输出技术;数据结构 6.掌握Java流程控制技术(分支、循环);(重点)app 7.掌握Math类、String类的用法。(难点)eclipse |
第一部分:结合Java和C基础语法的异同比较,总结本周理论知识函数
一、标识符:由字母、下划线、美圆符号和数字组成,且第一个符号不能是数字。学习
二、标识符能够用做类名、变量名、方法名、数组名以及文件名等。
三、关键字:Java中被赋予特殊意义的单词。 注意:关键字不作变量名。
4,注释:在Java语言中,注释的方法有三种。
(1)① // ,行注释 ② /* */ ,注释块 ③ /** */,用来自动地生成文档
(2)在Java语言中,源代码的文件名必须与公共类的名字相同,并用 .java 做为扩展名,并且区分大小写。
(3)System.out.println(); 和 System.out.print(); 其中第一个在输出以后换行,而第二个在输出以后不换行。
五、数据类型:(Java是一种强类型语言,因此它的每个变量都要声明一种类型)。
(1)8中基本的类型:
整数类型:(int:占4个字节; short:占2个字节; long:占8个字节; byte:占1个字节)
浮点类型:(float:占四个字节; double:占8个字节)
字符类型:(char:字面量值要用单引号括起来)
布尔类型:(Boolean:其值为:true 或者 false。 布尔值和整型值不能相互转换)
注意:在Java语言中,没有任何无符号型(unsigned)形式的int, short, long,和byte类型。
转义字符:\b(退格); \t(制表); \n(换行); \r(回车); \"(双引号); \'(单引号); \\(反斜杠)。
六、变量:在Java中每一个变量都有一个类型。在声明变量时,变量所属的类型位于变量的前面。
变量名必须是以字母开头并由字母或数字组成的序列。变量名中,全部的字母都是有意义的,而且大小写敏感。
不能使用Java中的关键字(保留字)来做为变量名。在一行能够声明一个或多个变量(不提倡),可是逐一声明每个变量能够提升程序的可读性。
变量的初始化:一个变量声明后,必须经过赋值语句对它进行明确的初始化(不要使用未初始化的变量)。
在Java语言中,能够在代码的任何位置进行变量的声明,可是变量的声明尽量地在靠近变量第一次使用的地方。(在同一做用域内不能声明两个同名的变量)。
七、常量:在Java中,使用关键字final来指示常量。关键字final表示这个常量只能被赋值一次,一旦被赋值就不能再改了。在Java中,常常但愿某个常量能够在一个类中的多种方法中使用,一般称这些常量为类常量。可使用关键字 Static final 声明一个类常量。
八、运算符:
(1)各类条件运算符:包括算术运算符、自增运算符与自减运算符、关系运算符、逻辑运算符和位运算符。
(2)Java提供的特殊运算符:New运算符和Instenceof,前者用来建立对象的运算符,或者用来返回一个布尔值来指出某个对象是不是一个特定类或者是它的子类的一个实例。
(3)运算符的优先级与结合性:见书44~45.
(4)数学函数与常量:数学函数包含在Math类中,提供幂函数、三角函数、指数函数及它的反函数等。
(5)Java还提供了两种常量:——Math.PI, Math.E.
九、类型转换: char
↓
byte → short → int → long
↓ ↓
float → double
隐式类型转换:
(1)若是两个操做数中有一个是double类型的,则另外一个会转换成double类型;
(2)若是两个操做数中有一个是float类型的,则另外一个会转换成float类型;
(3)若是两个操做数中有一个是long类型的,则另外一个会转换成long类型;
(4)两个数都将转换成int类型。
强制类型转换:
强制类型转换的语法格式是在圆括号中给出想要转换的类型,后面紧跟带转换的变量名。
(目标类型 ) 变量名
强制类型转换只是从那个变量计算出一个新的类型的值,并无改变那个变量,不管是值仍是类型都不改变。
十、字符串
(1)Java中字符串是Unicode字符的序列,它是组织字符的基本数据结构。
(2)有内置的字符串类型,在标准Java类库中提供了一个Java预约义类String。在Java中,字符串被看成对象来处理。
(3)程序中须要用到的字符串有两类:建立以后不会再作修改和变更的不可变字符串String类;建立以后容许再作更改和变化的构建字符串StringBuilder类。
(4)字符串常量:用双引号定义字符串常量;Java会自动为字符串常量生成一个String类的对象,因此能够直接初始化String类的对象。
(5)String类:
String类的构造方法:建立String类的一个对象,并对它初始化,须要调用类String的构造方法。
A:String(): 建立一个空串;
B:String(String Value);
C:String (char value []);
D:String (char[], int startIndex);
E:String (byte[], byte hibyte);
F:String (byte[], byte hibyte, int startIndex, int numChars);
String类的基本方法:
得到字符串的字串;
串链接(+): 注意,当获取一个字符串和一个非字符串时,后者将会转换成字符串;
获取字符串的长度:使用String类中的length()方法能够获取一个字符串的长度;
检测字符串是否相等:可使用equals方法检测两个字符串是否相等;
必定不能使用 “=” 运算符两个字符串是否相等,这个运算符只能肯定两个字符串是否放置在同一个位置上。
字符串检索:
字符串数字与数值的转化:Java.lang包中的Interger类,Long类,Float类, Double类分别提供了相应的方法来进行字符串与数值间的转换。
得到对象的字符串表示:全部的类都默认为Java.lang包中Object类的子类或间接子类。Object类中有一种方法得到对象的字符串表示: toString()。
String类的API及文档:String类中包含各种字符串处理的50多种方法,使用JDK在线API 文档能够查阅全部标准类及其方法,打开浏览器,指向JDK安装目录下的docs/spi/index.html。
(6)StringBuilder类字符串;
StringBuilder类的说明:需多个小段字符串链接建立一个字符串时,每次链接字符串时,都会构建一个新的String类对象。
eg: StringBuilder builder = new StringBuilder(); 建立一个字符串对象;
builder.append(ch); appends a singer character;
Builder.append(str); appends a String
StringBuilder 类的API:
(1)分配/获取字符串的长度;
(2)分配/获取字符串的容量;
(3)字符串的检索和字串;
(4)字符串的修改;
(5)字符串类型转换: toString();
十一、输入输出:
(1)读取输入:经过控制台进行输入时,须要构建一个Scanner对象,并与“标准输入流”System.in关联。
Scanner in= new Scanner(System.in);
Scanner类定义在java.util包中,使用时将包加载进来;
Scanner类输入时可见的;
(2)格式化输出:使用System.out.println();将数值输出到控制台。
十二、控制流程:
Java有5中语句:(1)方法调用语句:System.out.println("Hello!World");
(2)表达式语句:
(3)复合语句:用 {} 把一些语句括起来就构成了一个语句。
(4)控制语句:程序控制流程由控制语句给出;if, switch, for, while,do_while.
(5)package语句和import语句。
第二部分:实验部分
实验名称:实验二 Java基本程序设计
1. 实验目的:
(1)进一步熟悉命令行和IDE两种方式下java程序开发的基本步骤;
(2)掌握Eclipse集成开发环境下导入Java源程序的过程;
(3)掌握Java语言构造基本程序的数据类型、变量、运算符、各种表达式、输入输出、流程控制的基本语法;
(4)掌握Math类、String类、StringBuilder类的用法。
3. 实验步骤与内容:
实验1 程序互评
实验2 编写包含如下代码片断的java应用程序,输出字符串类对象s3的值。
代码以下:
package shiyaner; public class shiyantwo { public static void main(String[] args) { // TODO Auto-generated method stub String s1="Hello!"; //定义了一个String,名为s1,并将字符串Hello赋值给s1 String s2="World"; //定义了一个String,名为s2,并将字符串World赋值给s2 String s3=s1+s2; //定义了一个String,名为上,并将s1+s2的值赋给s3 System.out.println(s3); //输出s3的值 } }
运行结果以下:
实验3 更改实验2中s一、s二、s3为StringBuilder类对象,观察程序运行结果并与实验2结果进行对比,理解String类对象与StringBuilder类对象的区别。
代码以下:
package shiyansan; public class shiyanthree { public static void main(String[] args) { // TODO Auto-generated method stub StringBuilder s1 = new StringBuilder("Hello!"); //在字符串构建器StringBuilder中建立一个新的StringBuilder StringBuilder s2 = new StringBuilder("World"); StringBuilder s3 = new StringBuilder().append(s1).append(s2);//用StringBuilder将s1和s2拼接起来 System.out.println(s3); } }
运行结果如图:
实验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(“!”); } } |
代码以下:
public class Message { public static void main(String[] args) { // TODO Auto-generated method stub 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的内容,掌握文件的输入输出操做。
(1)运行结果如图:
(2)myfile.txt内容以下:
实验7 按照实验5的操做步骤,导入第3章3-3——3-4示例程序,掌握两个程序循环控制结构的用途。
(1)运行结果如图:
(2)Retirement2运行结果如图:
实验8 按照实验5的操做步骤,导入第3章3-5示例程序,理解抽奖几率计算算法。
运行结果如图:
4.实验总结
第三章内容主要为Java语法的基础知识,主要是C语言与Java语言异同的对比,也是咱们学习Java的基础内容。经过这次实验,我学会了如何向eclipse导入其余文件夹中的程序,掌握Java语言构造基本程序的数据类型、变量、运算符、各种表达式、输入输出、流程控制的基本语法。虽然感受有些吃力,有些跟不上节奏,可是在助教老师和同窗的帮忙下,以及经过看慕课视频,已经基本上可以进行实验。