16. java类实现序例化的方法是?
答:java类要实现序列化,对应的类必须先实现serializable和externalizable这两种接口,然后就可以调用objectoutputstream的witeobject()方法来保存对象以及通过objeatinputstream的readobjeact()方法来读取保存的对象。
17. collection框架中实现比较要实现什么接口?
答:要实现comparable接口,并实现这个接口的唯一方法cpmparato(),接受一个object对象,在这个方法中可以定义对象的排序规则。
18. 介绍java中的collection 框架结构 , 并画出来
<>collection
<>set
<>list
hashset
tree set
arraylist
vector
19. 编程题:列出某文件夹下的所有文件 (文件夹从命令行输入)
解:import java.io.*;
public class listfile
{
public static void main (string[] args)
{
string s="";
inputstreamreader ir=new inputstreamreader(system.in);
bufferedreader in = new bufferedreader(ir);
try {
s = in.readline();
file f=new file(s);
file[] files=f.listfiles();
for(int i=0;i
{
if(files[i].isfile())
{
system.out.println("文件:"+files[i]);
}
else
{
system.out.println("目录:"+files[i]);
}
}
in.close();
}
catch (ioexception e)
{
e.printstacktrace();
}
}
}
20. 编程题::写一个满足singleton模式的类出来
public class singletontest
{
private static singletontest sp;
private singletontest() {}
public static singletontest getinstance()
{
if (sp==null)
{ sp=new singletontest(); }
return sp;
}
21. 编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我abc”4,应该截为“我ab”,输入“我abc汉def”,6,应该输出为“我abc”而不是“我abc+汉的半个”
解:import java.io.*;
class interceptstring
{
string interceptstr;
int interceptbyte;
public interceptstring(string str,int bytes)
{
interceptstr=str;
interceptbyte=bytes;
system.out.println("字符串为:’"+interceptstr+"’;字节数为:"+interceptbyte);
}
public void interceptit()
{
int interceptcount; interceptcount=(interceptstr.length()%interceptbyte==0)?(interceptstr.length()/interceptbyte):(interceptstr.length()/interceptbyte+1);
system.out.println("截取后断数为:"+interceptcount);
for (int i=1;i<=interceptcount ;i++ )
{ if (i==interceptcount)
{
system.out.println(interceptstr.substring((i-1)*interceptbyte,interceptstr.length()));
} else
{
system.out.println(interceptstr.substring((i-1)*interceptbyte,(i*interceptbyte)));
}
}
}
public static void main(string[] args)
{
string s="";
inputstreamreader ir=new inputstreamreader(system.in);
bufferedreader in = new bufferedreader(ir);
try {
s = in.readline();
interceptstring ss = new interceptstring(s,4);
ss.interceptit();
in.close();
} catch (ioexception e)
{ e.printstacktrace();}
}
}
