![](/img/trans.png)
[英]Passing ArrayList of objects through intent - Java (Android)
[英]Java - Passing an ArrayList of Objects through TCP
我还是Java的新手,并进行了一个练习,其中在客户端和服务器之间建立了TCP连接。
在客户端,我有一个Shape Objects ArrayList,在其中添加了一个新的Triangle,Rectangle等,并将它们添加到此ArrayList中。 当我打开与服务器的连接时,我无法通过ArrayList。
您认为我应该在传递给服务器端之前将ArrayList转换为字符串吗?
谢谢
TCP允许将字节从客户端发送到服务器。 您要传递List<Shape>
。 因此,您需要一种将List<Shape>
转换为字节的方法。
有几种常见的方法可以做到这一点:
最后一个是最简单的,但是它不允许将形状发送到另一个Java程序,该Java程序也具有客户端在其类路径中具有的Shape类。
关键是双方都只在套接字级别处理原始字节。 这意味着:您必须*序列化*您的数据。
因此:研究Java序列化和ObjectInput / OutputStreams!
要注意的一件事:您的形状类需要可序列化! 然后,其他任何事情都只是关于使用现有的文档齐全的库!
确保您的对象可序列化 。 您无需将ArrayList转换为String。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.