從鍵盤中輸入一個字符串,如果存在多個空格,則壓縮到之間只存在一個空格,行首和行尾存在的空格全部去掉。
具體代碼如下:
import java.util.Scanner;
//將字符串中的n個空格壓縮成一個,減少n-1個空格,行首/行尾的空格全部去掉
public class YaSuo {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("請輸入字符串:");
String str = sc.nextLine();
String s = "";
//避免超出範圍
for(int i = 0;i<str.length()-1;i++){
//空格代表32
if((int)str.charAt(i)==32 && (int)str.charAt(i+1)==32 ){
continue;
}
s+=str.charAt(i);
}
//如果最後一個字符不是空格則添加到字符串s中,是則不添加
if(str.charAt(str.length()-1)!= 32){
s+=str.charAt(str.length()-1);
}
//防止行首出現空格
System.out.print(s.trim());
}
}
其中trim()方法是忽略前導空白和尾部空白