实验一、java语言基础
一、实验目的
1. 熟悉Java的运行环境。
2. 掌握编写与运行Java程序的方法。
3. 熟练掌握Java中的数据类型、运算符、表达式及流程控制语句。 4. 掌握数组的定义、建立及其使用方法。 5. 熟悉Java一般程序的结构。。 二、实验要求
1.熟悉Java的运行环境Eclipse。
2.编写一个Java 应用程序,在屏幕上输出”hello,java!”。 3.编写一个Java 小应用程序,在屏幕上输出”hello,java!”。 4.掌握运行 Java 程序的步骤。
5.浏览 SDK 自带的 Applet 应用小程序。
6.编写一个声明 Java 不同数据类型变量的程序。 7.编写一个使用运算符、表达式、变量的程序。 8.编写表达式语句、复合语句的程序。 9.编写使用不同选择结构的程序。
10.编写使用不同循环结构结构的程序。 11.编写一个使用 Java 数组的程序。 三、实验内容
(一)编写Java application源程序
在Eclipse环境下,编写程序如下:
public class Hello {
public static void main(String args[]) {
System.out.println(\Hello,welcome!\); } }
运行此应用程序,查看运行结果。 (二)编写Java applet源程序
1.在Eclipse环境下键入如下程序:
HelloApplet.java
import java.awt.Graphics;
import java.applet.Applet;
public class HelloApplet extends Applet { public void paint(Graphics g) {
g.drawString(“Hello,welcome!”, 10,20); } }
2. 编译java小程序
javac HelloApplet.java
3. 建立index.html文件,嵌入HelloApplet.class
4. 浏览html文件
? 使用appletviewer
appletviewer index.html ? 使用常规的浏览器
? 在Eclipse环境下运行此小应用程序。 (三)浏览SDK 自带的Applet 应用小程序
在java的安装目录下的\\demo\\applets\\Clock 文件夹中用浏览器打开网页文件example1.html,
就可以看到一个嵌入到Web 页面的Applet 开始运行,一个模拟时钟出现在网页上。
(四) 声明不同数据类型的变量
1.编写声明不同数据类型变量的程序文件 SY1_1.java,源代码如下:
public class SY1_1 {
public static void main(String args[]) { byte b=0x55; short s=0x55ff; int i=1000000;
long l=0xffffL; char c=’a’; float f=0.23F; double d=0.7E-3; boolean B=true;
String S=\这是字符串类数据类型\;
System.out.println(\字节型变量 b = \+b); System.out.println(\短整型变量 s = \+s); System.out.println(\ 整型变量 i = \+i); System.out.println(\长整型变量 l = \+l); System.out.println(\字符型变量 c = \+c); System.out.println(\浮点型变量 f = \+f); System.out.println(\双精度变量 d = \+d); System.out.println(\布尔型变量 B = \+B); System.out.println(\字符串类对象 S = \+S); } }
2. 编译并运行该程序。
(五) 使用关系运算符和逻辑运算符
1.建立使用关系运算符和逻辑运算符的程序文件,源代码如下:
class SY1_2 {
public static void main(String args[]) { int a=25, b=20, e=3, f=0; boolean d=a
System.out.println(\a=25,b=20,e=3,f=0\);
System.out.println(\因为关系表达式 a
if (e!=0 && a/e>5)
System.out.println(\因为 e 非 0 且 a/e 为 8 大于 5,所以输出 a/e= \+a/e);
if (f!=0 && a/f>5)
System.out.println(\a/f = \+a/f); else
System.out.println(\因为 f 值为 0,所以输出 f = \+f);
} }
2.编译并运行该程序。
(六) 使用表达式语句与复合语句
1. 建立包含表达式语句程序,源代码如下:
class SY1_3{
public static void main(String[] args) { int k, i=3, j=4; k=20*8/4+i+j*i;
System.out.println(\表达式(20*8/4+i+j*i)=\+k); } }
2. 建立包含复合语句程序,源代码如下:
class SY1_4{
public static void main(String args[]) {
int k, i=3, j=4; k=i+j;
System.out.println(\在复合块外的输出 k=\+k); {
float f; f=j+4.5F; i++;
System.out.println(\在复合块内的输出 f=\+f); System.out.println(\在复合块内的输出 k=\+k); }
System.out.println(\在复合块外的输出 i=\+i); } }
3. 编译并运行上述两个源程序。
4. 将变量 i 在块内定义会怎样?改变其他变量的位置看看会发生什么变化。
思考:指出程序的复合结构以及变量的使用范围。 (七) 使用选择语句 1.使用 if...else 语句
? 程序功能:使用 if...else 语句构造多分支,判断某一年是否为
闰年。闰年的条件是符合下面二者之一:能被 4 整除,但不能被 100 整除;能被 4 整除,又能被 100 整除。 ? 编写源程序文件,代码如下。 public class SY1_5 {
public static void main(String args[]) {
boolean leap; int year=2005;
if ((year%4==0 && year0!=0) || (year@0==0)) // 方法 1
System.out.println(year+\ 年是闰年\); else
System.out.println(year+\ 年不是闰年\); year=2008; // 方法 2 if (year%4!=0) leap=false;
else if (year0!=0) leap=true;
else if (year@0!=0) leap=false; else
leap=true; if (leap==true)
System.out.println(year+\ 年是闰年\); else
System.out.println(year+\ 年不是闰年\); year=2050; // 方法 3 if (year%4==0) {
if (year0==0) { if (year@0==0) leap=true; else
leap=false; } else
leap=false; } else
leap=false; if (leap==true)
System.out.println(year+\ 年是闰年\); else
System.out.println(year+\ 年不是闰年\); } }
? 编译运行程序
思考:本程序中有几个选择语句,哪些具有嵌套关系? 2.使用 switch 语句
? 程序功能:在不同温度时显示不同的解释说明。
? 程序源代码如下: class SY1_6{
public static void main(String args[]) { int c=38;
switch (c<10?1:c<25?2:c<35?3:4) { case 1: System.out.println(\ \+c+\℃ 有点冷。要多穿衣服。\);
case 2:
System.out.println(\ \+c+\℃ 正合适。出去玩吧。\);
case 3:
System.out.println(\ \+c+\℃ 有点热。\); default:
System.out.println(\ \+c+\℃ 太热了!开空调。\);
} } }
? 编译运行程序 (八) 使用循环语句
1. for 循环语句练习
? 程序功能:按 5 度的增量打印出一个从摄氏温度到华氏温度的转
换表。
? 程序源代码如下: class SY1_7{
public static void main (String args[]) { int h,c;
System.out.println(\摄氏温度 华氏温度\); for (c=0; c<=40; c+=5) { h=c*9/5+32;
System.out.println(\ \+c+\ \+h); } } }
? 编译并运行程序。 2. while 循环语句练习
? 程序功能:运行程序后从键盘输入数字 1/2/3 后,可显示抽奖
得到的奖品;如果输入其它数,字或字符显示“没有奖品给你!”。 ? 程序源代码如下: import java.io.*; class SY1_8 {
public static void main(String args[]) throws IOException {
char ch;
System.out.println(\按 1/2/3 数字键可得大奖!\); System.out.println(\按空格键后回车可退出循环操作.\);