问题是这样的:有四个参数var1,var2,var3,var4.都是String类型。我想得到这四个参数连接体。连接形式是,如果参数为空,则用四个空格代替。比如传入四个参数为:'aaaa',null,'cccc',null则想要得到的字符串为:'aaaa cccc '.我用StringBuffer来相加,可是总是自动把空格给去掉了。请高手指教,谢谢。
解决方案 »
- java中子类继承父类的所有属性和方法,包括构造函数?
- java 根据X、Y坐标动态加载地图 追加···
- 一段小代码的2个知识盲点~~
- 再次换个说法问下吧。在eclipse里扩大内存能导出8k+的数据到EXCEL表中,打包成。JAR文件后则不行,请问解决方法!
- Color.red与Color.RED有什么区别?
- 如何计算两个日期之间的天数?
- 新手问题~~~~~~~~~~~~~~~~~~~~~~~
- 大家讨论一下有没有办法将已有的应用程序做成一个Web Service?
- 使用jar打包,内部文件的中文问题
- 怎么理解?
- 请高手帮解决一下!代码如下: 怎么让子菜单项间的 事件相应内容 显示在窗口里而不出现重叠现象。请求帮助!!
- 为什么向MYSQL中插入时间时要用这条语名
StringBuilder sb = new StringBuilder();
String temp;
for(String x:s) {
temp = x==null ? " " : x;
sb.append(temp);
}
System.out.println(sb.toString());
StringBuffer[] val=new StringBuffer[4];
for(int i=0;i<4;i++)
val[i]=new StringBuffer(in.nextLine());
for(int i=1;i<4;i++)
{
val[0].append(val[i]);
if(val[i].length()==0)
val[0].append(" ");
}
System.out.println(val[0]);
我也贴一个
StringBuilder sb = new StringBuilder();
String temp;
for(String x:s) {
temp = x==null ? " " : x;
sb.append(temp);
}
System.out.println(sb.toString());这个不是很明白,一是我在eclipse中应用StringBuilder sb = new StringBuilder();这句,为什么会报找不到StringBuilder这个类的错误?
二是for(String x:s) 这个没看懂是怎么用的。
temp = x==null ? " " : x;
sb.append(temp);
}foreach 循环等价于for(int i=0; i<s.length; i++) {
temp = s[i]==null ? " " : s[i];
sb.append(temp);
}foreach、StringBuilder 都需要 JDK 1.5 以上版本支持的。如果你装的 JDK 是 1.5 以上的版本的话,你需要在 Eclipse 设置一下:Window --> Preferences... --> Java --> Complier 将“Complier complance level”改到 5.0 即可。如果你的 JDK 是 1.5 以下版本的,那 foreach、StringBuilder 就不能使用,foreach 用 for 代替,StringBuilder 用 StringBuffer 代替。
StringBuffer sb = new StringBuffer();
for (int i=0; i<s.length; i++) {
sb.append(s[i] == null ? " " : s[i]);
}
System.out.println(sb.toString());不过我看了你的代码,问题好像不是在 StringBuffer 上,有可能 packageForm.getOptionCode2() 这样得到的不可能是 null,很可能得到的是空字符串,你需要检查一下 packageForm 中的方法。
是要把那句换成 才可以
sb.append(s[i] == null ? " " : s[i]);