上机实验二:Java 语言基础、控制语句
一、实验目的
1) 掌握java语言的数据类型、运算符和表达式以及运算符的优先级 2)学会使用if和if-else和switch分支语句 3)学会使用while、do-while和for循环语句 4)学会使用break和continue程序控制语句
5)掌握数组的定义和使用方法、了解数组常用方法
二、实验内容
1) 学会数据类型的定义,使用简单的运算符和表达式实现给定的任务,利用输出语句实现数据的格式化显示。
2)练习使用if和if-else、switch分支语句、while、do_while和for循环语句以及break和continue控制语句。
3)掌握Java中的数组,数组是一种强大的数据结构,可以用一个变量名存贮多喝彼此相关的数据,通过相应的元素的下表来实现存取,由于数组下表永远是从0开始,所以下标的值总比相应的元素序号小于1。
三、实验步骤
1:利用输出语句来实现数据格式化显示 例2-1 在横线上填出下列变量的定义类型
--------------------------------------------------------------------------------------------------------------------
public class Example1{
public static void main(String args[]){ int x=45; float y=3.14f; double z=3.1415; boolean truth=true; char c='6'; System.out.println(\各变量的值是:\ System.out.println(\的值是:\ System.out.println(\的值是:\ System.out.println(\的值是:\ System.out.println(\的值是:\ System.out.println(\的值是:\ } }
--------------------------------------------------------------------------------------------------------------------
写出变量的定义类型并解释“+”在输出语句中的作用是什么? 连接
2、熟悉各类型数据间的优先关系和相互转换。
整型、实型、字符型、数据可以混合运算。运算时,不同的数据先转换成同一类型,然后进行运算,转换从低级到高级。不同的类型数据间的优先级关系如下:
byte,short,char->int->long->float->double 低———————————————>高
如果高级数据类型要转换成低级数据类型,需要强制类型转换, 如:int i;
Byte b=(byte)i;//把整型变量i强制转换成byte型
例2-2 打开Java程序开发工具Eclipse输入下列代码;调试运行后解释画线语句的含义(注意:类型之间的转换)。
------------------------------------------------------------------------------------------------------------------- public class TypeConversion{ public static void main (String args[]){ char a=1; int b=4; double c=24.6f; byte d; d=(byte)(a+b+c); //(1)将a+b+c的值强制转换成字节型并赋予d short e; e=(short)(a+b+c); //(2)将a+b+c的值强制转换成短整型并赋予e double g; g=a+b+c; //(3)将a+b+c赋值于g System.out.println(\ System.out.println(\ System.out.println(\ } }
---------------------------------------------------------------------------------------------------------------------
画线语句的含义:
3、学会使用if和if-else和swith分支语句
例2-3打开Java程序开发工具Eclipse输入下列代码;调试运行后写出输出结果;
------------------------------------------------------------------------------- public class IfElseTest {
public static void main(String[] args) { int a=3; if(a==1)
System.out.println(\进行加法运算\ else if(a==2)
System.out.println(\进行减法运算\ else if(a==3)
System.out.println(\进行乘法运算\ else
System.out.println(\进行除法运算\ } }
------------------------------------------------------------------------------- 程序的执行结果是:
例2-4打开Java程序开发工具Eclipse输入下列代码;调试运行后写出输出结果;
------------------------------------------------------------------------------- public class SwitchTest2 { public static void main(String[] args) { char a=8; switch(a) { case 1:System.out.println(\进行加法运算\ case 2:System.out.println(\进行减法运算\ case 3:System.out.println(\进行乘法运算\ case 4:System.out.println(\进行除法运算\ default:System.out.println(\的值不合法\ } } }
------------------------------------------------------------------------------- 程序的执行结果是:
4、学会使用while、do-while和for循环语句
例2-5打开Java程序开发工具Eclipse输入下列代码,调试运行后写出输出结果,并解释画线语句的含义。
------------------------------------------------------------------------------------------------------------------- public class DoWhileTest { public static void main(String[] args) { int i=1; do { if(i%2==0) //(1) System.out.print (i+\ i++; }while(i<=20); //(2) } }
------------------------------------------------------------------------------------------------------------------ 程序的执行结果是: 画线语句的含义是:
例2-6打开Java程序开发工具Eclipse输入下列代码,将程序中的错误之处画线,改正之后写出程序的执行结果;
---------------------------------------------------------------------------------------------------------------------- public class ForTest { public static void main(String[] args) {
//sum用于存储和 int sum; // i表示循环变量 int i; for(i=0,i<=100,i++){ // 循环体 sum+=1; } System.out.println(\和为:\ } }
---------------------------------------------------------------------------------------------------------------------- 程序的执行结果是: 5、使用break和continue程序控制语句
例2-7打开Java程序开发工具Eclipse输入下列代码,调试运行后写出输出结果,并分析解释画线语句的功能。
---------------------------------------------------------------------------------------------------------------------- public class ContinueAndBreakTest { public static void main(String[] args) { // 保存和 int sum = 0; // 循环变量 int i=1; for(;i<1000;i++) { if(sum>5000) //(1) break; //(2) if(i%3!=0) //(3) continue; //(4) sum+=i; } // 输出最后的结果 System.out.println(sum); } }
---------------------------------------------------------------------------------------------------------------------- 程序的执行结果是: