- 博客(6)
- 问答 (2)
- 收藏
- 关注
原创 用数组实现循环队列(新思路)
用数组实现循环队列(新思路)用数组实现一个循环队列,难点就在于如何判断数组是否满了,不论是书上的方法,还是一些大佬的写法,都是利用一个计算去判断:(rear + maxSize - front) % maxSize有的小伙伴天资聪颖一下就理解了,有的小伙伴可能理解不够深刻,只能牢牢记住这个公式在这里我给大伙分享一种思路:其实上面的思路的本质就是:判断尾指针是否追上了头指针,很多小伙伴可能就在你追我,我追你的过程中就懵逼了其实我们完全可以忽略这个过程,我们只需要定义一个变量 size,add() 一
2022-01-27 18:27:12 1300
原创 使用 Java NIO 搭建一个聊天室
使用 NIO 搭建一个聊天室前面刚讲了使用 Socket 搭建了一个 Http Server,在最后我们使用了 NIO 对 Server 进行了优化,然后有小伙伴问到怎么使用 Socket 搭建聊天室,这节仍然使用 NIO 为基础进行搭建。一、NIO 聊天室入门案例该案例只有三个类:NioServer 聊天室服务端、NioClient 聊天室客户端、ClientThread 客户端线程。服务端代码:package com.fengsir.network.chatroom;import ja
2022-01-24 17:37:16 366
原创 使用Socket实现HttpServer(三)
使用Socket实现HttpServer(三)这一章继续对我们的服务器进行优化,引入 NIOpackage com.fengsir.network.step4;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.*;import java.nio.charset.StandardCharsets;import java
2022-01-24 16:49:47 191
原创 使用Socket实现HttpServer(二)
使用Socket实现HttpServer(二)前面我们使用 Socket 实现了一个简易的 HttpServer,接下来我们将对我们的服务器进行优化:面向对象的封装优化线程模型(引入多线程)Request/Response 对象抽象Step1(面向对象的封装)对我们之前所写的 HttpServer 进行面向对象封装。主要封装了 listen() 和 accept() 方法。package com.fengsir.network;import java.io.*;import jav
2022-01-24 15:33:04 870 1
原创 使用Socket实现HttpServer(一)
使用Socket实现HttpServer(一)Socket 编程socket 翻译过来叫插槽,一张图你就明白socket 就插在 TCP 也就是传输层上,对用户的请求和服务器的响应进行处理。下面我使用 socket 实现一个简易的 HttpServerpackage com.fengsir.network;import java.io.*;import java.net.ServerSocket;import java.net.Socket;/** * @Author FengZe
2022-01-24 13:29:56 566
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人