av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Java實(shí)現(xiàn)聊天機(jī)器人

瀏覽:175日期:2022-08-09 13:03:25

本文實(shí)例為大家分享了Java實(shí)現(xiàn)聊天機(jī)器人的具體代碼,供大家參考,具體內(nèi)容如下

服務(wù)器的代碼:

package Day02;import java.io.*;import java.net.*; public class Socket1 { public static void main(String[] args) throws Exception{ int port=8899; ServerSocket server=null; MChat MC=new MChat(); try { server=new ServerSocket(port); System.out.println('服務(wù)器啟動(dòng)...'); while(true) { Socket socket=server.accept();//監(jiān)聽客戶端連接,如果客戶端連接成功,返回實(shí)例化的Socket對(duì)象 System.out.println('客戶端信息:'+socket); //讀取流操作 SocketThd thd=new SocketThd(socket); thd.start(); } } catch (Exception e) { // TODO: handle exception } finally { try { if(server!=null) server.close(); System.out.println('服務(wù)器已停止! '); } catch (Exception e2) { // TODO: handle exception } } } static class SocketThd extends Thread{ MChat MC=new MChat(); Socket socket;//和客戶端進(jìn)行通信的對(duì)象 BufferedReader br=null; PrintWriter pw=null; public SocketThd(Socket socket) { this.socket=socket; } public void run() { //讀入流操作 try { br=new BufferedReader(new InputStreamReader(socket.getInputStream(),'UTF-8')); //寫入流操作 pw=new PrintWriter( new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), 'UTF-8'))); //接收客戶端發(fā)送來的信息 String str=''; while((str=br.readLine())!=null) { System.out.println('客戶端:'+str); //服務(wù)器處理 String rtn=''; //聊天機(jī)器人處理程序 rtn=MC.getCharResult(str); //處理結(jié)果返回客戶端 pw.println(rtn); pw.flush(); } } catch (Exception e) { e.printStackTrace(); } finally { // TODO: handle finally clause try { if(br!=null) br.close(); if(pw!=null) pw.close(); if(socket!=null) socket.close(); } catch (Exception e2) { // TODO: handle exception } } } }}

客戶端的代碼:

package Day02; import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.net.Socket; public class Client1 { public static void main(String[] args) throws Exception{ String IP='192.168.1.*'; int port=8899; Socket socket=new Socket(IP,port);//建立與服務(wù)器連接 //讀取流操作 BufferedReader br=new BufferedReader(new InputStreamReader(socket.getInputStream(), 'UTF-8')); BufferedReader brKey=new BufferedReader(new InputStreamReader(System.in, 'UTF-8')); //寫入流操作 PrintWriter pw=new PrintWriter( new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), 'UTF-8'))); while(true) { String send=brKey.readLine();//等待阻塞命令 if(send.equals('END')) {//鍵盤輸入的借宿條件 break; } //向服務(wù)器發(fā)送信息 pw.println(send); pw.flush(); //接收服務(wù)端回復(fù)的消息 String strRtn=br.readLine(); System.out.println('服務(wù)端回復(fù)信息:'+strRtn); } //關(guān)閉連接 br.close(); pw.close(); socket.close(); }}

對(duì)話內(nèi)容引擎:

package Day02; import java.util.Hashtable; public class MChat { private Hashtable<String, String> htMS=new Hashtable<>(); public String getCharResult(String sKey) { String str=htMS.get(sKey); if(str==null) return ''; else return str; } public MChat() { htMS.put('你好呀','你也好呀,你需啊什么服務(wù)嗎?'); htMS.put('見到你很高興','我也很高興見到你。'); htMS.put('吃了嗎','今天吃的好飽呀'); htMS.put('好累呀', '聽音樂輕松一下吧'); htMS.put('路上好堵呀','需要哦給你選一條路線嗎'); htMS.put('再見', '我先走了,有事你叫我'); }}

實(shí)現(xiàn)結(jié)果如下:

Java實(shí)現(xiàn)聊天機(jī)器人

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 欧美亚洲国语精品一区二区 | 日韩在线成人 | 日韩一区二区三区视频在线观看 | 国产精品久久777777 | 免费观看成人性生生活片 | 国产高清视频在线 | 日本在线播放一区二区 | 久久机热 | 亚洲国产精品一区二区三区 | 自拍偷拍视频网 | 一区二区三区国产好 | 一区二区福利视频 | 久久99国产精一区二区三区 | 国产精品99精品久久免费 | 午夜久久久久久久久久一区二区 | 欧美精品一区二区三区一线天视频 | 在线成人免费视频 | 91精品国产综合久久久久久丝袜 | 国内精品伊人久久久久网站 | 国产成人99久久亚洲综合精品 | 天天天操操操 | 欧美日韩视频在线 | 国产高清无av久久 | 7777久久| 亚洲综合日韩精品欧美综合区 | 99成人精品 | 97伦理影院| 精品免费 | www.日本三级 | 国产一区二区三区视频在线观看 | 91免费在线 | 日本天堂一区 | 日韩一区二区三区视频在线观看 | 国产一区二区三区在线 | 日本小电影在线 | 国产一区久久久 | 欧美精 | 国产专区在线 | 99热热热 | 国产精品99久久久久久久久久久久 | 日韩精品免费视频 |