没有经验的java用户请求类的建议
我创建了一个类,它发送一个数据包,另一个程序成功地接收到这个数据包没有经验的java用户请求类的建议,java,class,Java,Class,我创建了一个类,它发送一个数据包,另一个程序成功地接收到这个数据包 import java.net.*; public class UDPServer { public static void main(final String args[]) throws Exception { final String sendID = "level1"; final int val = 2; final DatagramSocket serverS
import java.net.*;
public class UDPServer {
public static void main(final String args[]) throws Exception {
final String sendID = "level1";
final int val = 2;
final DatagramSocket serverSocket = new DatagramSocket(7474);
byte[] sendData = new byte[1024];
final InetAddress IPAddress = InetAddress.getLocalHost();
final String sentence = sendID + new String(" ")
+ new Integer(val).toString();
final String capitalizedSentence = sentence.toUpperCase();
sendData = capitalizedSentence.getBytes();
final DatagramPacket sendPacket = new DatagramPacket(sendData,
sendData.length, IPAddress, 7470);
serverSocket.send(sendPacket);
}
}
我的问题是如何从另一个代码运行此代码,为sendID
和val
传递变量。这最终将把游戏中的信息发送到音频编程软件,以创建算法分数
抱歉,如果代码错误/格式不正确,我不是程序员
谢谢。只需创建一个带有两个参数的Send方法
public class UDPServer {
public void send(final String sendID, final int val) throws Exception {
final DatagramSocket serverSocket = new DatagramSocket(7474);
byte[] sendData = new byte[1024];
final InetAddress IPAddress = InetAddress.getLocalHost();
final String sentence = sendID + new String(" ")
+ new Integer(val).toString();
final String capitalizedSentence = sentence.toUpperCase();
sendData = capitalizedSentence.getBytes();
final DatagramPacket sendPacket = new DatagramPacket(sendData,
sendData.length, IPAddress, 7470);
serverSocket.send(sendPacket);
}
}
现在是另一节课
UDPServer server = new UDPServer();
server.send("level1", 2);
对代码的评论很少:
避免使用首字母大写的变量(即IPAddress)。类通常以大写字母开头,而不是变量
您可以简化:
byte[] sendData = new byte[1024];
sendData = capitalizedSentence.getBytes();
借
及
借
只需创建一个带有两个参数的Send方法
public class UDPServer {
public void send(final String sendID, final int val) throws Exception {
final DatagramSocket serverSocket = new DatagramSocket(7474);
byte[] sendData = new byte[1024];
final InetAddress IPAddress = InetAddress.getLocalHost();
final String sentence = sendID + new String(" ")
+ new Integer(val).toString();
final String capitalizedSentence = sentence.toUpperCase();
sendData = capitalizedSentence.getBytes();
final DatagramPacket sendPacket = new DatagramPacket(sendData,
sendData.length, IPAddress, 7470);
serverSocket.send(sendPacket);
}
}
现在是另一节课
UDPServer server = new UDPServer();
server.send("level1", 2);
对代码的评论很少:
避免使用首字母大写的变量(即IPAddress)。类通常以大写字母开头,而不是变量
您可以简化:
byte[] sendData = new byte[1024];
sendData = capitalizedSentence.getBytes();
借
及
借
您尝试学习Java是件好事,但堆栈溢出并不是学习这些东西的最佳场所。这更像是一个问答网站,面向具体问题。你们的问题本质上是“我如何做面向对象编程?”。也许其他一些SO用户会在评论中建议好的Java教程站点,但我希望你会发现这个问题过于宽泛而无法解决。创建一个类似于:
publicstaticvoidsend(stringsendid,int-value)
的方法,并从其他类调用它,作为UDPServer.send(“level1”,2)代码>尝试学习Java是件好事,但堆栈溢出不是学习这些东西的最佳场所。这更像是一个问答网站,面向具体问题。你们的问题本质上是“我如何做面向对象编程?”。也许其他一些SO用户会在评论中建议好的Java教程站点,但我希望你会发现这个问题过于宽泛而无法解决。创建一个类似于:publicstaticvoidsend(stringsendid,int-value)
的方法,并从其他类调用它,作为UDPServer.send(“level1”,2)代码>非常感谢,非常好用。我肯定要重新思考我的方法,但看到这个例子是如何运作的,我很确定我能解决它并继续前进。谢谢你提供的关于格式和简化的提示,更精简总是很好的!非常感谢,非常好用。我肯定要重新思考我的方法,但看到这个例子是如何运作的,我很确定我能解决它并继续前进。谢谢你提供的关于格式和简化的提示,更精简总是很好的!