湖南大学JAV第三次作业.docx
- 文档编号:3200349
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:20
- 大小:243.68KB
湖南大学JAV第三次作业.docx
《湖南大学JAV第三次作业.docx》由会员分享,可在线阅读,更多相关《湖南大学JAV第三次作业.docx(20页珍藏版)》请在冰豆网上搜索。
湖南大学JAV第三次作业
第六章Java输入输出
1、说明程序功能:
importjava.io.*;
publicclassCharWrite{
publicstaticvoidmain(Stringargs[]){
try{
FileWriterfw=newFileWriter("charset.txt");
for(inti=32;i<126;i++)
fw.write(i);
fw.close();
}catch(IOExceptione){}
}
}
答:
向文件charset.txt中输入ASCII码从32到126共94个字符。
2、先用随机函数产生出任意的20个整数,再按由小到大的顺序排序,然后将结果写入一个文件中,最后从该文件中读出后显示出来。
请分别用顺序文件和随机文件的读写形式进行编程测试。
代码:
importjava.io.BufferedInputStream;
importjava.io.BufferedOutputStream;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.OutputStream;
importjava.util.Random;
publicclassRandNum{
publicstaticvoidmain(Stringargs[]){
Randomrand=newRandom();//实例化一个产生随机数的类
int[]num=newint[20];//定义一个整型数组,用来存储产生的随机数
intr=0;//随机数
for(inti=0;i r=rand.nextInt(1000);//产生一个1000以内的随机数 //放入数组 num[i]=r; } intk; //进行排序 for(inti=0;i for(intj=0;j if(num[i] k=num[i]; num[i]=num[j]; num[j]=k; } } } RandNumrn=newRandNum(); //写入文件 rn.WriteFile("src/123",num); //读取文件 int[]x=rn.ReadFile("src/123"); //读取的数组 for(inti=0;i System.out.print(x[i]+"\t"); if(i%5==4) System.out.println(); } } /** *读取文件的方法 *@parampath */ publicint[]ReadFile(Stringpath){ inta[]=null; try{ //实例化一个File输入流对象 InputStreamis=newFileInputStream(path); //实例化一个Buffer输入流对象 BufferedInputStreambs=newBufferedInputStream(is); intlength=bs.available(); //读取第一个为数组大小 intk=bs.read(); //用来计数 intcount=0; //实例化数组 a=newint[k]; Stringstr="";//中间变量 for(inti=0;i //继续读取 k=bs.read(); //若读取的不是换行 if(k! =13&&k! =10&&k! =-1){ //读取到空格 while(k! =32){ str+=(char)k; k=bs.read(); } //把字符串里的数字转换成整型放入数组中 a[count]=Integer.parseInt(str); count++; str="";//清空字符串 } } is.close(); bs.close(); System.out.println("读取成功"); }catch(FileNotFoundExceptione){ System.out.println("找不到指定文件,请确认文件路径"); }catch(IOExceptione){ e.printStackTrace(); } returna; } /** *写入文件 *@parampath路径 *@parama数组 */ publicvoidWriteFile(Stringpath,int[]a){ try{ //实例化一个File输出流 OutputStreamos=newFileOutputStream(path); //实例化一个Buffered输出流 BufferedOutputStreambos=newBufferedOutputStream(os); //写入数组大小 bos.write(a.length); //写入换行符 bos.write(13); bos.write(10); //循环写入数组的值 for(inti=0;i bos.write(Integer.toString(a[i]).getBytes()); //写入1个空格 bos.write(32); bos.flush(); } bos.close(); os.close(); System.out.println("写入成功"); }catch(FileNotFoundExceptione){ e.printStackTrace(); }catch(IOExceptione){ e.printStackTrace(); } } } 截图 3、统计一个文本文件中单词的个数。 文本文件的名字从命令行中获得。 代码 importjava.io.FileReader; importjava.io.IOException; importjava.util.StringTokenizer; publicclasstest{ publicstaticvoidmain(String[]args)throwsIOException{ FileReaderfileReader=newFileReader(args[0]); StringBufferstringBuffer=newStringBuffer(); char[]b=newchar[506]; while(fileReader.read(b,0,505)! =-1){ stringBuffer.append(b); } StringTokenizerstringTokenizer=newStringTokenizer(stringBuffer.toString()); System.out.println("文本文件中单词的个数为: "+stringTokenizer.countTokens()); } } 结果截图 第七章Java图形用户界面 1、阅读下面的程序,回答问题。 importjava.awt.*; importjavax.swing.*; publicclassTextendsJFrame{ publicT(){ super("GridLayout"); Containercon=this.getContentPane(); con.setLayout(newGridLayout(2,3)); con.add(newJButton("a")); con.add(newJButton("b")); con.add(newJButton("c")); con.add(newJButton("d")); con.add(newJButton("e")); con.add(newJButton("f")); setSize(200,80); setVisible(true); } publicstaticvoidmain(Stringargs[]){ newT(); } } 画图表示程序运行后的图形界面。 如果程序通过实现某个接口处理按钮的动作事件,则该接口名为何? 接口中的方法头声明如何? 答: 实现的接口是ActionListener,该接口的方法声明是public void actionPerformed(ActionEvent e) 2、编写一个简单的计算器,要求图形用户界面如下图所示。 代码 importjava.awt.BorderLayout; importjava.awt.GridLayout; importjava.awt.event.ActionEvent; importjava.awt.event.ActionListener; importjava.util.HashSet; importjavax.swing.JButton; importjavax.swing.JFrame; importjavax.swing.JPanel; importjavax.swing.JTextField; publicclassjisuanqi{ publicstaticvoidmain(String[]args){ newMyCalculator(); } } classMyCalculator{ privatedoubleresult=0.0; privateStringstring=""; privateJTextFieldjtext=newJTextField("",15); String[]str=newString[]{"Clear","+","0","1","2","3","-","*",".","4","5","6","/","%","=","7",
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 湖南大学 JAV 第三次 作业