欢迎来到天天文库
浏览记录
ID:15029254
大小:239.00 KB
页数:28页
时间:2018-08-01
《java编程常见问题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、JAVA编程常见问题字符串连接误用错误的写法:1.Strings="";2.for(Personp:persons){3.s+=","+p.getName();4.}5.s=s.substring(2);//removefirstcomma正确的写法:1.StringBuildersb=newStringBuilder(persons.size()*16);//wellestimatedbuffer2.for(Personp:persons){3.if(sb.length()>0)sb.append(",");4.sb.append(p.g
2、etName);5.}错误的使用StringBuffer错误的写法:1.StringBuffersb=newStringBuffer();2.sb.append("Name:");3.sb.append(name+'');4.sb.append("!");5....6.Strings=sb.toString();问题在第三行,appendchar比String性能要好,另外就是初始化StringBuffer没有指定size,导致中间append时可能重新调整内部数组大小。如果是JDK1.5最好用StringBuilder取代String
3、Buffer,除非有线程安全的要求。还有一种方式就是可以直接连接字符串。缺点就是无法初始化时指定长度。正确的写法:1.StringBuildersb=newStringBuilder(100);2.sb.append("Name:");3.sb.append(name);1.sb.append("!");2.Strings=sb.toString();或者这样写:1.Strings="Name:"+name+"!";测试字符串相等性错误的写法:1.if(name.compareTo("John")==0)...2.if(name==
4、"John")...3.if(name.equals("John"))...4.if("".equals(name))...上面的代码没有错,但是不够好。compareTo不够简洁,==原义是比较两个对象是否一样。另外比较字符是否为空,最好判断它的长度。正确的写法:1.if("John".equals(name))...2.if(name.length()==0)...3.if(name.isEmpty())...数字转换成字符串错误的写法:1.""+set.size()2.newInteger(set.size()).toString()
5、正确的写法:1.String.valueOf(set.size())利用不可变对象(Immutable)错误的写法:1.zero=newInteger(0);2.returnBoolean.valueOf("true");正确的写法:1.zero=Integer.valueOf(0);2.returnBoolean.TRUE;请使用XML解析器错误的写法:1.intstart=xml.indexOf("")+"".length();2.intend=xml.indexOf("");3.Stringnam
6、e=xml.substring(start,end);正确的写法:1.SAXBuilderbuilder=newSAXBuilder(false);2.Documentdoc=doc=builder.build(newStringReader(xml));3.Stringname=doc.getRootElement().getChild("name").getText();请使用JDom组装XML错误的写法:1.Stringname=...2.Stringattribute=...3.Stringxml=""4.+"7、att=""+attribute+"">"+name+""5.+"";正确的写法:1.Elementroot=newElement("root");2.root.setAttribute("att",attribute);3.root.setText(name);4.Documentdoc=newDocumet();5.doc.setRootElement(root);6.XmlOutputterout=newXmlOutputter(Format.getPrettyFormat());7.Stringxml
7、att=""+attribute+"">"+name+"
8、=out.outputString(root);XML编码陷阱错误的写法:1.Stringxml=FileUtils.readTextFile("my.xml");因为xml的编
此文档下载收益归作者所有