黑马程序员技术交流社区

标题: UDP中的一个问题。。。 [打印本页]

作者: 黑马任雪刚    时间: 2012-5-31 19:22
标题: UDP中的一个问题。。。
//实现简单的UDP通讯。
import java.net.*;
import java.io.*;
class UdpSent2
{

public static void main(String[] args)throws Exception
{
  DatagramSocket ds = new DatagramSocket(10003);
  BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  //byte[] b1;
  String line = null;
  while((line = br.readLine())!=null)
  {
   if("886".equals(line));
   break;
   byte[] buf= line.getBytes();//怎么这句代码老是报这个错误:Exception in thread "main" java.lang.Error: Unresolved compilation problem:
               //Unreachable code
               //at UdpSent2.main(UdpSent2.java:17)
               //这个错误是什么意思呀?????
   DatagramPacket dp=new DatagramPacket(buf,buf.length,InetAddress.getByName("127.0.0.1"),10005);
   ds.send(dp);
   
   
  }
  ds.close();
  
  
}
}


class UdpReiceve2
{

public static void main(String[] args)throws Exception
{
  DatagramSocket ds  = new DatagramSocket(10005);
  while(true)
  {
  byte[] b = new byte[1024*64];
  DatagramPacket dp = new DatagramPacket(b,b.length);
  ds.receive(dp);
  String ip = dp.getAddress().getHostAddress();
  String data = new String(dp.getData(),0,dp.getLength());
  int p = dp.getPort();
  System.out.println(ip);
  System.out.println(data);
  System.out.println(p);
  }
  
}
}


作者: 袁培育    时间: 2012-5-31 19:33
你if后面多写了个分号,也就是说你的if判断后没有执行语句就结束了,那么break就是个单独的语句了,那他一定会被执行,那他下面的语句就不可能执行不到了,所以出现了你看到的错误,即:编译时错误,不可执行的语句。
作者: 黑马任雪刚    时间: 2012-5-31 19:41
袁培育 发表于 2012-5-31 19:33
你if后面多写了个分号,也就是说你的if判断后没有执行语句就结束了,那么break就是个单独的语句了,那他一 ...

真是粗心呀!我!谢谢!!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2