还剩24页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
面试面试软件开发工程师算法题含答案并到文件中,文件中的单词用车符分隔,文件中用c.txt a.txt b.txt编写一个程序,将文件中的单词与文件中的单词交替合
1.a.txt b.txt车或空格进行分隔农1=1•packagecn.itcast;import java.io.File;import java.io.FileReader;import java.io.FileWriter;public classMainClass{public staticvoidmainString[]args throwsException,,,,FileManager a=new FileManagera.txt,new char[]{\rT};「};FileManager b=new FileManager,b.txt,new char[]{\rT,,HFileWriter c=new FileWriterc.txt;Arrays.copyOffacceptedFileSzpos;;//returnFile[]accpetedFilesList.toArray、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字3,节截取的字符串,但要保证汉字不被截取半个,如〃我应该截ABC4,取“我,输入〃我汉应该输出〃我,而不是“我AB”ABC DEF”,6,ABC”汉的半个”ABC+答首先要了解中文字符有多种编码及各种编码的特征假设为要截取的字节数npublic staticvoidmainString[]args throwsException=我爰中华我爰传智String stra abcdef;=我汉;String strABCint num=tnmGBKstr.getBytesGBK,5;System.out.printlnstr.substring0,num;public staticinttrimGBKbyte[]bufjnt n{int num=0;booleanbChineseFirstHalf=false;forinti=0;in;i++〈ifbuf[i]0!bChineseFirstHalf{bChineseFirstHalf=true;}else{num++;bChineseFirstHalf=false;return num;有一个字符串,其中包含中文字符.英文字符和数字字符,请统计和打印
[20];forinti=0;idata.length;i++data[i]=intMath.random*100+1;;System.out.printdata[i]+,System.out.println;Node root=new Node;root.value=data
[0];forinti=l;idata.length;i++root.storedata[i];root.finddata
[19];root.preListQ;System.out.printlnO;root.middleListO;System.outprintlnQ;rootafterListQ;-----------------------又一次临场写的代码importjava.util.Arrays;importjava.util.Iterator;public classNode{private Nodeleft;private Noderight;private intvalue;//private int num;public Nodeintvalue{this.value=value;public voidaddint value{if valuethis.valueifright!=nullright.addvalue;elseNode node=new Nodevalue;right=node;left.addvalue;elseNode node=new Nodevalue;left=node;public booleanfindint value{if value==this.value returntrue;else ifvaluethis.value{ifright==null return false;else returnright.findvalue;ifleft==null returnfalse;else returnI eft.fi ndvalue;public voiddisplay{System.out.printlnvalue;ifleft!=null left.displayO;ifright!=null right.displayO;/public Iteratoriterator{}*/public staticvoid mainString[]args{int[]values=new int
[8];forint i=0;i8;i++{intnum=intMath.random*15;//System.out.printlnnum;//ifArrays.binarySearchvalues,numOif!containsvalues,numvalues[i]=num;elseSystem.out.printlnArrays.toStringvalues;Node root=new Nodevalues
[0];forint i=l;ivalues.length;i++{root.addvalues[i];System.out.printlnrootfind13;root.displayO;public staticboolean containsint[]arrjnt value{int i=0;for;iarr.length;i++{二二ifarr[i]value returntrue;returnfalse;String[]words=null;int pos=0;口publicFileManagerString filename,char seperatorsthrowsException{File f=newFilefilename;FileReaderreader=new FileReaderf;char[]buf=new char[intf.length];int len=reader.readbuf;Stringresults=new StringbufO,len;zString regex=null;ifseperators.length1{+”「+regex=+seperators
[0]seperators[l];}else{regex=+seperators
[0];words=results.splitregex;二二public StringnextWord{ifpos words.length returnnull;编写一个程序,将录下的所有文件复制到
2.d:\java.java d:\jadreturnwords[pos++];目录下,并将原来文件的扩展名从改为Java.jad(大家正在做上面这道题,网上迟到的朋友也请做做这道题,找工作必须能编写这些简单问题的代码!)答方法接受一个对象,listFiles FileFilter这个对象就是过虑的策略对象,不同的人提供不同的FileFilter FileFilter实现,即提供了不同的过滤策略import java.io.File;import javaJo.FilelnputStream;import java.io.FileOutputStream;import java.io.FilenameFilter;import java.io.IOException;import java.io.InputStream;import javaJo.OutputStream;public classJad2Java{public staticvoidmainString[]args throwsException{File srcDir=new Filejava;if!srcDir.existssrcDir.isDirectoryO目录不存在thrownew ExceptionFile[]files=srcDir.listFilesnewFilenameFilter{publicboolean acceptFiledir,String name,,{returnname.endsWith.java;;System.out.printlnfilesJength;File destDir=new Filejad;if!destDir.existsdestDir.mkdir;forFile f:files{FilelnputStream fis=new FilelnputStreamf;StringdestFileName=f.getNameO.replaceAIICW.javaS,jad;FileOutputStreamfos=new FileOutputStreamnewFiledestDirdestFileName;zcopyfis fos;zfis.closeO;fos.closeQ;private staticvoidcopyInputStream ips,Outputstream opsthrowsException{int len=0;byte[]buf=new byte
[1024];whilelen=ips.readbuf!=-1{ops.writebuf0len;//由本题总结的思想及策略模式的解析
1.class jad2java{得到某个目录下的所有的文件集合
1.java得到目录
1.1File srcDir=newFiled:\\java;得到目录下的所有文件:
1.2java File[]files=srcDir.listFilesnew;MyFileFilterO只想得到的文件
1.
3.java classMyFileFilterimplememyts FileFilter{publicboolean acceptFilepathnamereturnpathname.getName.endsWith.java.将每个文件复制到另外一个目录,并改扩展名2,得到目标目录如果目标目录不存在,则创建之
2.1根据源文件名得到目标文件名,注意要用正则表达式,注意.的转义
2.2根据表示目录的和目标文件名的字符串,得到表示目标文件的23File Fileo〃要在硬盘中准确地创建出一个文件,需要知道文件名和文件的目录将源文件的流拷贝成目标文件流,拷贝方法独立成为一个方法,方法的
2.4参数采用抽象流的形式〃方法接受的参数类型尽量面向父类,越抽象越好,这样适应面更宽广分析方法内部的策略模式实现原理listFilesFile[]listFilesFileFilter filter{;File[]files=listFiles//ArraylistacceptedFilesList=new ArrayList;File[]acceptedFiles=new File[files.length];int pos=0;forFile file:files{booleanaccepted=filter.acceptfile;ifaccepted{//acceptedFilesList.addfile;acceptedFiles[pos++]=file;。
个人认证
优秀文档
获得点赞 0