java实验.docx
- 文档编号:14070646
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:14
- 大小:172.74KB
java实验.docx
《java实验.docx》由会员分享,可在线阅读,更多相关《java实验.docx(14页珍藏版)》请在冰点文库上搜索。
java实验
实验一基本数据类型与控制语句
实验课程名:
Java程序设计
专业班级:
学号:
姓名:
实验时间:
2014.3.31-4.18实验地点:
指导教师:
一、实验目的和要求
1 掌握开发Java应用程序的3个步骤:
编写源文件、编译源文件和运行应用程序;
2学习同时编译多个Java源文件;
3掌握char型数据和int型数据之间的相互转换,同时了解unicode字符表;
4掌握使用if…elseif多分支语句;
5使用if…else分支和while循环语句解决问题。
二、实验内容
任务1一个简单的应用程序
✧实验要求:
编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:
“你好,很高兴学习Java”和“Wearestudents”。
1、源代码:
publicclassHello
{
publicstaticvoidmain(Stringargs[])
{
System.out.println("你好,很高心学习java");//命令行窗口输出"你好,很高兴学习Java"
Aa=newA();
a.fA();
}
}
classA
{
voidfA()
{System.out.println("Wearestudents");//命令行窗口输出"Wearestudents"
}
}
2、运行结果:
3、实验结果与分析:
(明确地写出最后结果,并对自己得出的结果进行具体、定量的结果分析,说明其可靠性;杜绝只罗列不分析)
简单的Java输入语句。
系统会生成一个Hello.class和A.class文件。
任务2联合编译
✧实验要求:
编写4个源文件:
Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。
将4个源文件保存到同一目录中,例如:
C:
\100,然后编译Hello.java。
1、源代码:
2、运行结果:
编译后得到如下文件:
运行结果:
3、实验结果与分析:
将含有main方法的Java文件与其所调用的子文件放在同一目录下,编译的时候系统会自动的生成各个Java文件的系统可执行的class文件。
任务3输出希腊字母表。
✧实验要求:
编写一个Java应用程序,该程序在命令行窗口输出希腊字母表。
1、源代码:
publicclassGreekAlphabet
{
publicstaticvoidmain(Stringargs[])
{
intstartPosition=0,endPosition=0;
charcStart='α',cEnd='ω';
startPosition=(int)cStart;//cStart做int型转换据运算,并将结果赋值给startPosition
endPosition=(int)cEnd;//cEnd做int型转换运算,并将结果赋值给endPosition
System.out.println("希腊字母\'α\'在unicode表中的顺序位置:
"+(int)cStart);
System.out.println("希腊字母表:
");
for(inti=startPosition;i<=endPosition;i++)
{
charc='\0';
c=(char)i;//i做char型转换运算,并将结果赋值给c
System.out.print(""+c);
if((i-startPosition+1)%10==0)
System.out.println("");
}
}
}
2、运行结果:
3、实验结果与分析:
这个程序的主要目的是教我们如何强制类型转换,如果我们已经在前面定义了intstartPosition=0,endPosition=0;当类型转换语句写成intstartPosition=(int)cStart;编译时则会出错。
任务4回文数。
✧实验要求:
编写一个Java应用程序。
用户从键盘输入一个1—9999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。
回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都是回文数。
1、源代码:
importjavax.swing.JOptionPane;
publicclassNumber
{
publicstaticvoidmain(Stringargs[])
{
intnumber=0,d5,d4,d3,d2,d1;
Stringstr=JOptionPane.showInputDialog("输入一个1至99999之间的数");
number=Integer.parseInt(str);
if(number>=1&&number<=99999)//判断number在1至99999之间的条件
{
d5=number/10000;//计算number的最高位(万位)d5
d4=number%10000/1000;//计算number的千位d4
d3=number%1000/100;//计算number的百位d3
d2=number%100/10;
d1=number%10;
if(d5!
=0)//判断number是5位数的条件
{
System.out.println(number+"是5位数");
if(d5==d1&&d4==d2)//判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
elseif(d5==0&&d4!
=0)//判断number是4位数的条件
{
System.out.println(number+"是4位数");
if(d4==d1&&d2==d3)//判断number是回文数的条件码
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
elseif(d5==0&&d4==0&&d3!
=0)//判断number是3位数的条件
{
System.out.println(number+"是3位数");
if(d3==d1)//判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
elseif(d2!
=0)
{
System.out.println(number+"是2位数");
if(d1==d2)
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
elseif(d1!
=0)
{
System.out.println(number+"是1位数");
System.out.println(number+"是回文数");
}
}
else
{
System.out.printf("\n%d不在1至99999之间",number);
}
}
}2、运行结果:
3、实验结果与分析:
学会使用if语句进行判断,对各个情况进行仔细的分析。
任务5猜数字游戏。
✧实验要求:
编写一个Java应用程序,实现下列功能:
1)程序随机分配给客户一个1—100之间的整数
2)用户在输入对话框中输入自己的猜测
3)程序返回提示信息,提示信息分别是:
“猜大了”、“猜小了”和“猜对了”。
用户可根据提示信息再次输入猜测,直到提示信息是“猜对了”。
1、源代码:
importjava.awt.*;
importjava.awt.event.*;
classWindowButtonextendsFrameimplementsActionListener{
intnumber;
Label提示条;
TextField输入框;
ButtonbuttonGetNumber,buttonEnter;
WindowButton(Strings){
super(s);
setLayout(newFlowLayout());
buttonGetNumber=newButton("得到一个随机数");
add(buttonGetNumber);
提示条=newLabel("输入你的猜想",Label.CENTER);
提示条.setBackground(Color.cyan);
输入框=newTextField("0",10);
add(提示条);
add(输入框);
buttonEnter=newButton("确定");
add(buttonEnter);
buttonEnter.addActionListener(this);
buttonGetNumber.addActionListener(this);
setBounds(100,100,150,150);
setVisible(true);
validate();
}
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==buttonGetNumber){
number=(int)(Math.random()*100+1);
提示条.setText("输入你的猜想");
}elseif(e.getSource()==buttonEnter){
intguess=0;
try{
guess=Integer.parseInt(输入框.getText());
if(guess==number){
提示条.setText("猜对了!
");}
elseif(guess>number){
提示条.setText("猜大了!
");
输入框.setText(null);}
elseif(guess 提示条.setText("猜小了! "); 输入框.setText(null); } }catch(NumberFormatExceptionevent){ 提示条.setText("请输入数字字符"); } } } } publicclassCaiShu{ publicstaticvoidmain(Stringargs[]){ WindowButtonwin=newWindowButton("窗口"); } } 2、运行结果: 3、实验结果与分析: 该程序运用了AWT组件库,并且包含注册与定义事件的监听器的方法,对于后续图形界面的开发与学习也有很大的帮助。 任务6打印出九九乘法表。 1、源代码: publicclassHello{ publicstaticvoidmain(Stringargs[]){ inti,j; for(i=1;i<10;i++) { {for(j=1;j<=i;j++) System.out.print("\t"+i+"x"+j+"="+i*j+""); } System.out.println(); } } 1、}运行结果 3、实验结果与分析: 学会运用for循环的嵌套 任务7从命令行接受若干个整数并进行排序,之后输出排序结果。 1.源代码: packageming; importjava.util.Arrays; importjava.util.Scanner; importjava.util.Scanner; importjava.lang.String; publicclassMaopao{ publicstaticvoidmain(String[]args){ Scannersc=newScanner(System.in); System.out.println("你输入的数字是: "); Stringstr=sc.nextLine(); String[]arr=str.split(""); intnum; num=arr.length; System.out.println("你输入了"+num+"个数。 "); for(inti=0;i { System.out.print(arr[i]+"\t"); } inti,j; Stringtemp; for(i=num-1;i>0;i--){ for(j=0;j if(Integer.parseInt(arr[j])>Integer.parseInt(arr[j+1])){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } System.out.println("\n冒泡排序的结果是: "); for(i=0;i System.out.print(arr[i]+""); } } } 2、运行结果: 3、实验结果与分析: String[]arr=str.split("");语句是将str这个字符串用空格号“”分割分割后的字符串数组放在arr[]中比如111,222,333,那么arr[0]=111arr[1]=222arr[2]=333。 nextLine();语句是字符串的输入方式。 我们要灵活运用Java的API函数来快速熟悉各种常用的函数 三、结论(写本次实验的收获) 通过这次作业,我对于Java的程序有了更深一步的认识,并且对于图形的开发也有了更深的兴趣,对我学习Java有了很大的促进作用。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 实验