字符串为:
String value = "计算机及应用 铁道信号 通信工程 铁道供电 ";
输出: 计算机及应用;铁道信号;通信工程;铁道供电;
注:铁道供电前有多个空格
------解决方案--------------------
if you use JDK1.5,you can use String#sprit function;
or you can use java.util.StringToken when you are using JDK1.4 or lower...
--------------------------
String value = "计算机及应用 铁道信号 通信工程 铁道供电 ";
String[] rst=value.split( " ");//\x0020
for(int i=0;i <rst.length;i++){
if(! " ".equals(rst[i])){
System.out.print( rst[i]+ "; ");
}
}
------解决方案--------------------
value = value.replaceAll( " + ", "; ");
注:+ 前面有一个空格。
------解决方案--------------------
如果最后一个也要分号的话改为:
value = value.replaceAll( " + ", "; ") + "; ";
就可以了。
------解决方案--------------------
String aaa= "计算机及应用 铁道信号 通信工程 铁道供电 ";
String bbb= " ";
for(int i=0;i <aaa.length();i++){
String aaa1= (String.valueOf(aaa.charAt(i)));
if(!aaa1.trim().equals( " "))
{
bbb=bbb.concat(aaa1);
}else
{
String cc = (String.valueOf(aaa.charAt(i-1)));
if(!cc.trim().equals( " ")){
bbb=bbb.concat( "; ");
}
}
}
System.out.print(bbb);
个人的愚见。呵呵。
------解决方案--------------------
char[] c;
c = value.toCharArray();
String mess = " ";
for (int i = 0; i < value.length(); i++) {
if (!String.valueOf(c[i]).equals( " ")) {
System.out.println( "== " + c[i]);
mess += c[i];
}
}
System.out.println( "========== " + mess);