Java语言基础实例实验报告.doc
《Java语言基础实例实验报告.doc》由会员分享,可在线阅读,更多相关《Java语言基础实例实验报告.doc(10页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、浙江大学城市学院实验报告浙江大学城市学院实验报告课程名称 面向对象程序设计 实验项目名称 Java 语言基础实验 学生姓名 专业班级 学号 一. 实验目的和要求 1. 掌握 Java 语言的基本数据类型、字符串、数组 2. 掌握 Java 语言的运算符、表达式、语句 3能够编写 Java 应用程序二. 实验内容 1. 局部变量与 final 变量实验 2. 基本数据类型与转换实验 3. 算术运算的精度问题实验 4. 移位运算实验 5. 运算赋值实验 6. 短路逻辑运算实验 7. 编程实验:输出 Unicode 特定区间的字符。 8. 编程实验:分析输入的数字三. 实验结果与分析(可将程序运行结
2、果截屏,也可分析运行结果)1. 局部变量与 final 变量实验。编写以下程序,并回答问题。 public class LocalVariableInitExample public static void main(String args) int a ; System.out.print(a); final int b = 100;b+; System.out.print(b); (1)程序的错误 1、System.out.print(a);出错,局部变量 a 没有进行过初始化或赋值 2、b+;出错,不能对终态局部变量 b 赋值。它必须为空白,并且不使用复合赋值(2)改正方式 public
3、 class LocalVariableInitExample public static void main(String args) int a=10 ; System.out.print(a); final int b = 100; System.out.print(b); 2. 基本数据类型与转换实验。编写以下程序,分析代码的输出结果,并回答问题。 class Test2public static void main(String args)System.out.println(“第 1 段测试代码输出“); System.out.println(byte)255);System.ou
4、t.println(short)65535);System.out.println(byte)-129);System.out.println(byte)129);System.out.println(byte)128);System.out.println(“第 2 段测试代码输出“); int i = 123456789;float f = i;System.out.println(f);long j = 123456789123456789L;double d = j;System.out.println(d);System.out.println(“第 3 段测试代码输出“); Sys
5、tem.out.println(077);System.out.println(0x77);System.out.println(77); 请分析并回答以下问题: (1) 分析第 1 段代码,说明在什么情况下,int 类型的数字转换为 byte 或者 short 类型, 会出现符号变化,即正数变负数,负数变正数?为何输出会不同? 答:在强制类型转换时,如果数值超过目标类型的取值范围,那么某些数据位会被强 行截断(即数据截断) ,从而导致数据丢失,甚至符号丢失。 例如:byte 的取值范围是-2727-1,int 类型的 255 不在这个范围内,强制转换的结果 是-1。(2) 分析第 2 段代码
6、,说明整数类型向浮点型转型是否可能出现精度损失,是否需要 强制转换。 答:整数类型向浮点型转型可能会出现精度损失,不需要强制转换,可以自动类型转 换。(3) 分析第 3 段代码,说明整数的八进制、十六机制、十进制的书写格式(即字面值 格式)都是什么? 答:八进制:首字母为 0 ,包括 0 到 7 之间的字符所组成的字符序列; 十六进制:以 0x(或者 0X)开始,包括 0 到 9、以及 A 到 F 十六个符号组成的 字符序列; 十进制:由 0 到 9 十个字符组成的字符序列,一般首字符不可为 0。3. 算术运算的精度问题实验。编写以下程序,并回答问题。 class Test3public st
7、atic void main(String args)short a = 10; a = a + 2; byte b = 1; b = b + 1; short a = 10; byte b = 5; a = a + b; char c = a; c = c+1; (1)程序的错误 1、类型不匹配:不能从 int 转换为 short ,不能从 int 转换为 byte,不能从 int 转 换为 char 2、局部变量 a 、b 重复(2)改正方式class Test3 public static void main(String args)short a = 10; a = (short)(a
8、 + 2); byte b = 1; b = (byte)(b + 1); short d = 10; byte e = 5; d = (short)(d + e); char c = a;c = (char)(c+1); 4. 移位运算实验。编写以下程序,分析代码的输出结果,并回答问题。 class Test4public static void main(String args)System.out.println(“第 1 段测试代码输出“);System.out.println(132);System.out.println(1L32);System.out.println(“第 2
9、段测试代码输出“);System.out.println(105);System.out.println(-105);System.out.println(“第 3 段测试代码输出“); System.out.println(11);System.out.println(-21); 请分析并回答以下问题: (1) 分析第 1 段代码,为何输出会不同? 答:int 类型为 32 为,所以右移 32 位还是其本身,long 类型为 64 为,所以右移 32 位, 低位被舍弃,高位补 0,最终结果为 0。(1) 分析第 2 段代码,正整数右移的最小值是什么?负整数右移的最大值是什么? 答:正整数右移
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 语言 基础 实例 实验 报告
限制150内