public static DataOutputStream toClient = null;
public static int clients = 0;
public static void main(String args[]) throws IOException {
ServerSocket serverSocket = new ServerSocket(1039);
System.out.println("Server is running..");
while (true) {
Socket connsock = null;
try {
// accepting client socket
connsock = serverSocket.accept();
toClient = new DataOutputStream(connsock.getOutputStream());
System.out.println("A new client is connected : " + connsock);
clients = clients + 1;
toClient.writeUTF(clients); //here, I get the incompatible types; int cannot be converted to string
}
}
}
}
在带有Toclient.WriteUtf(客户端);
的行上。
怎么啦?
DataOutputStream的WriteUTF
方法需要一个String
,而您提供了一个Int
。
当您希望发送int
时,我会考虑以下两个选项:
writeutf()
,但您必须使用字符串将clients
转换为int
。
- 改用
writeint
发送纯int
而不是字符串
。
摘要:
// convert to String
toClient.writeUTF(String.valueOf(clients));
// send a single plain int value
toClient.writeInt(clients);
下面是我的代码:
我试着在这个网站上搜索类似的问题,但没有找到任何地方他们试图使用一个int数来填充的方法的使用。
我遇到错误“类型不兼容:boolean不能转换为int”
我能得到帮助吗?我是Java的新手,不知道如何用上一个LWL修复这个错误。 不兼容类型:字符串不能转换为double
我试着在这个网站上搜索类似的问题,但没有发现任何地方他们试图使用一个int数字来填充使用方法。