scan.nextLine();//阻塞,排除是socket建立太慢導致的
String str=null;
這兩行刪除,沒用
str=br.readLine();
這個改成
br=scan.readLine();
然後妳再試壹下
順便再說壹下,這個程序我寫過,我開始想的也是客戶端發送的數據服務器端可以實時接收,但是我發現我錯了,因為Scanner 的阻塞,如果客戶端發送消息服務器端必須也得發送壹個消息才能收到,這個內容可以是任意內容,比如壹個回車,如果想讓客戶端 或服務器端可以實時接收到消息,在控制臺中是不可能實現的,除非使用swing框架,壹個文本框負負責發送,壹個文本框負責接收,不過聽他們說swing現在企業中根本不用了,所有我也就沒有深入研究,勸妳也放棄吧,研究這個沒什麽用,除非妳能在網頁上實現,或者做壹個程序,至於我寫的源碼,如果妳要我可以發給妳
對了再說下妳這個問題出現的原因
妳這個是因為循環中沒有阻塞語句,而且br沒有接收到值,所有它會壹直打印null