gpt4 book ai didi

java - 仅打印数组的元素

转载 作者:行者123 更新时间:2023-12-01 14:13:48 27 4
gpt4 key购买 nike

我是 Java/Android 新手。我创建一个像这样的数组:

String [] resultArray = new String [lengthFromServ];
int i = 0;
while (i<lengthFromServ) {
int result = fromServ.read();
char valueOfResult = (char) result;
String resultFromServ = Character.toString(valueOfResult);
resultArray[i] = resultFromServ;
i++;
}

lengthFromServ 在之前声明:(while 语句执行 4 次)

lengthFromServ = 4;

服务器发送给我字符串:“0,12”

当我尝试通过以下方式打印该数组的元素时:

System.out.println(Arrays.toString(resultArray))

我得到:

[0, ,, 1, 2]

我的问题是:如何仅获取该数组的元素?没有 "[", "]", "," ?我只想得到这个字符串:

0,12

请帮忙,我将不胜感激。

最佳答案

您从服务器读取的方式完全错误。您应该使用 BufferedReader 或 DataInputStream。这些将使您轻松阅读:

Socket socket = new Socket(serverHost, serverPort);
DataInputStream dis = new DataInputStream(socket.getInputStream());
int lengthFromServer = 4;
byte resultArray[] = new byte[lengthFromServer];
dis.readFully(result);
String result = new String(resultArray);

或者,如果您的服务器将在内容后添加换行符,您可以更轻松地做到这一点:

Socket socket = new Socket(serverHost, serverPort);
DataInputStream dis = new DataInputStream(socket.getInputStream());
String result = dis.readLine();

关于java - 仅打印数组的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18291758/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com