Tôi có một bài tập lập trình và một phần của nó yêu cầu tôi tạo mã đọc một dòng từ người dùng và xóa tất cả khoảng trắng trong dòng đó. dòng có thể bao gồm một từ trở lên.Cách xóa tất cả các khoảng trắng trong java
Điều tôi đang cố gắng thực hiện với chương trình này là phân tích từng ký tự cho đến khi tìm thấy dấu cách và sau đó lưu chuỗi con đó làm mã thông báo đầu tiên. sau đó lặp lại một lần nữa cho đến khi nó không còn mã thông báo hoặc kết thúc của dòng.
tôi tiếp tục nhận được điều này khi tôi cố gắng để biên dịch nó:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 1
at java.lang.String.charAt(String.java:694)
at trim.main(trim.java:23)
Đây là mã
import java.util.Scanner ;
import java.lang.Character;
import java.lang.String ;
public class trim
{
public static void main (String[]args)
{
String a ;
String b ;
String c ;
char aChar ;
int i = 0 ;
Scanner scan = new Scanner(System.in);
a = scan.nextLine();
a =a.trim() ;
for (; i >= 0 ; i++)
{
aChar = a.charAt(i) ;
if (aChar != 32)
{
a = a.substring(0,i+1);
}
else
{
b = a.substring(i,160) ;
b= b.trim();
c = c + a ;
c = c.trim() ;
a = b ;
i = 0 ;
}
if (b.equals(null))
{
i = -1 ;
}
}
}
}
dễ dàng hơn cách để làm điều này được đánh giá cao, nhưng tôi vẫn muốn để có được chương trình này đang làm việc.
và tôi không thể sử dụng dấu phụ ở đầu vào.
Cảm ơn tất cả mọi người cho tất cả sự giúp đỡ,
tôi sẽ sử dụng các phương pháp đơn giản hơn, và sẽ đọc javadoc.
chức năng trong 'chuỗi con' không phải' substr' – kaysush
Bạn cần trợ giúp từ sách "Đầu tiên lõi java". Đọc nó càng sớm càng tốt. – AmitG
cảm ơn, tôi đoán các trang web mà nói với tôi để sử dụng chất nền là sai. –