极简易版专家聊天程序--JAVA练手
呵呵,用JAVA包开发SOCKET连接,是很简单的呢~~~
DailyAdviceServer.java
import java.io.*; import java.net.*; public class DailyAdviceServer { String[] adviceList = {"Take smaller bites", "Go for the tight jeans", "代码写得好,要饭要到老", "You might want to rethink"}; public void go() { try { ServerSocket serverSock = new ServerSocket(4242); while(true) { Socket sock = serverSock.accept(); PrintWriter writer = new PrintWriter(sock.getOutputStream()); String advice = getAdvice(); writer.println(advice); writer.close(); System.out.println(advice); } } catch(IOException ex) { ex.printStackTrace(); } finally { // } } private String getAdvice() { int random = (int) (Math.random() * adviceList.length); return adviceList[random]; } public static void main(String[] args) { // TODO Auto-generated method stub DailyAdviceServer server = new DailyAdviceServer(); server.go(); } }
DailyAdviceClient.java
import java.io.*; import java.net.*; public class DailyAdviceClient { public void go() { try { Socket s = new Socket("127.0.0.1", 4242); InputStreamReader streamReader = new InputStreamReader(s.getInputStream()); BufferedReader reader = new BufferedReader(streamReader); String advice = reader.readLine(); System.out.println("Today you should: " + advice); reader.close(); } catch(IOException ex) { ex.printStackTrace(); } } public static void main(String[] args) { // TODO Auto-generated method stub DailyAdviceClient client = new DailyAdviceClient(); client.go(); } }
丑陋的输出:
极简易版专家聊天程序--JAVA练手的更多相关文章
- 20个Java练手项目,献给嗜学如狂的人
给大家推荐一条由浅入深的JAVA学习路径,首先完成 Java基础.JDK.JDBC.正则表达式等基础实验,然后进阶到 J2SE 和 SSH 框架学习.最后再通过有趣的练手项目进行巩固. JAVA基础 ...
- 去哪找Java练手项目?
经常有读者在微信上问我: 在学编程的过程中,看了不少书.视频课程,但是看完.听完之后感觉还是不会编程,想找一些项目来练手,但是不知道去哪儿找? 类似的问题,有不少读者问,估计是大部分人的困惑. 练手项 ...
- 【Python】【辅助程序】练手小程序:记录外网动态IP地址
练手小程序 程序作用:对IP实时记录: 1.定时获取外网IP,存储在本地文件中: 编写思路: 1)收集获取外网的API接口 http://bbs.125.la/thread-1383897 ...
- java 练手 谁是最好的Coder
Problem A 谁是最好的Coder 时间限制:1000 ms | 内存限制:65535 KB 描述 计科班有很多Coder,帅帅想知道自己是不是综合实力最强的coder. 帅帅喜欢帅,所 ...
- Java 练手项目
HotelSystem:https://github.com/misterchaos/HotelSystem(酒店管理系统 Java,tomcat,mysql,servlet,jsp实现,没有使用任何 ...
- java练手 公约数和公倍数
Problem D 公约数和公倍数 时间限制:1000 ms | 内存限制:65535 KB 描述 小明被一个问题给难住了,现在需要你帮帮忙.问题是:给出两个正整数,求出它们的最大公约数和最小 ...
- java练手 韩信点兵
Problem C 韩信点兵 时间限制:3000 ms | 内存限制:65535 KB 描述 相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排.五人一排.七人一排地变换队 ...
- java 练手 Fibonacci数
Problem B Fibonacci数 时间限制:3000 ms | 内存限制:65535 KB 描述 无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列 ...
- WPF开发的彩票程序(练手好例子) 附源码
前言 WPF是.NET最新的界面开发库,开发界面非常灵活!但是学习WPF难度也非常大. 应朋友之邀,编写了一个小程序.程序虽小,五脏俱全,WPF开发的灵活性可窥见一斑. 对于新手学习有很好的借鉴意义, ...
随机推荐
- 传智播客课程——Lucene搜索引擎
Lucene不是一个现成的程序,类似文件搜索程序或web网络爬行器或是一个网站的搜索引擎.Lucene是一个软件库,一个开发工具包,而不是一个具有完整特征的搜索应用程序.它本身只关注文本的索引和搜索. ...
- [置顶] iOS 名片识别代码
采用的是惠普图片识别SDK.本代码可以识别中文.代码改自 http://www.cocoachina.com/bbs/read.php?tid=123463 . 图片就不贴了,123463中的效果是可 ...
- [Javascript] String method: endsWith() && startsWith()
With endsWith && startsWith, you can easily find out whether the string ends or starts with ...
- [转] Javascript中数组与字典(即object)的使用
简述: 简单记录一下数据结构字典和数组, 其实在Javascript这种弱类型的脚本语言中,数组同时也就是字典,下面主要就是字典数组的简易使用 代码: 1. 数组中添加map <!DOCTYPE ...
- Swift还是Objective-C
Swift还是Objective-C Swift还是Objective-C? Swift语言发布已经两年了,iOS开发需要学习C或者Objective-C.此外,人们似乎还在迷惑Swift到底适合 ...
- POJ 1986(LCA and RMQ)
题意:给定一棵树,求任意两点之间的距离. 思路:由于树的特殊性,所以任意两点之间的路径是唯一的.u到v的距离等于dis(u) + dis(v) - 2 * dis(lca(u, v)); 其中dis( ...
- codeforces 251A Points on Line(二分or单调队列)
Description Little Petya likes points a lot. Recently his mom has presented him n points lying on th ...
- ubuntu wine卸载程序并删除图标
卸载ubuntu 下用wine安装的程序,可以用wine uninstaller命令,打开 添加/删除程序界面,进行删除程序操作:
- Android内存泄漏的各种原因详解
转自:http://mobile.51cto.com/abased-406286.htm 1.资源对象没关闭造成的内存泄漏 描述: 资源性对象比如(Cursor,File文件等)往往都用了一些缓冲,我 ...
- VB编程技巧推荐
VB编程技巧推荐 1.zyl910的专栏——理论水平高 用VB写高效的图像处理程序 V2.0 优化分支代码——避免跳转指令堵塞流水线 2.Laviewpbt的专栏 —— 有很多算法的代码,实用性高 ...