A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小东先森 中级黑马   /  2016-9-13 23:51  /  824 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

      Socket语句的循环输入时用while(true)语句,而在ServerSocket语句中读取时,不用while(true)语句,因为ServerSocket用accept方法获取了Socket对象,他们是一个对象,当输入没有停止,读取语句就一直待命状态,所以不用while(true)语句。

4 个回复

倒序浏览
新进基础班两天的小白学习中,虽然没看懂
回复 使用道具 举报
cat哥 发表于 2016-9-13 23:55
新进基础班两天的小白学习中,虽然没看懂

哈哈 别急
回复 使用道具 举报
不是,可以用wile语句的,等客户端发送完毕后,调用socket的shutdownOutput方法,告诉服务器端发送完毕,那么服务端的while就会自动结束
回复 使用道具 举报
MarsBong 发表于 2016-9-14 00:18
不是,可以用wile语句的,等客户端发送完毕后,调用socket的shutdownOutput方法,告诉服务器端发送完毕,那么服 ...

你说的也有道理,但是你这种方法,有一点多此一举的感觉,不用while循环,也就没有关闭的说法,你强行给循环,就需要有一个语句去结束循环。不过你的方法可以用到后来多线程循环接收多个客户端时的语句。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马