UDP编程:

DatagramSocket(邮递员):对应数据报的Socket概念,不需要创建两个socket,不可使用输入输出流。

DatagramPacket(信件):数据包,是UDP下进行传输数据的单位,数据存放在字节数组中。

UDP也需要现有Server端,然后再有Client端。

两端都是DatagramPacket(相当于电话的概念),需要NEW两个DatagramPacket。

InetAddress:网址

这种信息传输方式相当于传真,信息打包,在接受端准备纸。

模式:

发送端:Server:

DatagramPacket inDataPacket=new DatagramPacket ((msg,msg.length); InetAdress.getByName(ip),port);

接收端:

clientAddress=inDataPack.getAddress();//取得地址

clientPort=inDataPack.getPort();//取得端口号

datagramSocket.send; //Server

datagramSocket.accept; //Client

 package TomTexts;
import java.io.*; public class TomTexts_31 {
public static void main(String []args){
byte b[]=new byte[10];
String str;
int n=0;
double sum=0,d,avg;
System.out.print("要对几个数求平均?");
try{ System.in.read(b);
str=new String(b).trim(); //去除多余的/r、/n、空格符
n=Integer.parseInt(str);
}
catch(IOException e){
System.out.println(e.toString());
}
catch(NumberFormatException e){
System.out.println("请不要输入0-9以外的其他字符!");
System.exit(-1); //程序异常结束
}
for(int i=1;i<=n;i++){
System.out.print(i+": ");
try{ System.in.read(b);
str=new String(b);
Double x=new Double(str);
d=x.doubleValue();
sum+=d;
}
catch(IOException e){
System.out.println(e.toString());
}
catch(NumberFormatException e){
i--; //重新输入
System.out.println("请正确输入实数!");
}
}
System.out.println("平均值="+sum/n);
}
}

UDP也需要现有Server端,然后再有Client端的更多相关文章

  1. server端获得到client端的IP地址的格式

    使用telnet,ping或其他client连接server端时,server端获得的client端的ip地址取决于client端使用的时ipv4还是ipv6地址. 例: client IPv4地址: ...

  2. 搜集的一些RTMP项目,有Server端也有Client端

    查询一些RTMP的协议封装时找到了一些RTMP开源项目,在这里列举一下,以后有时间或是有兴趣可以参考一下: just very few of them. Red5 only contains a se ...

  3. 基于Netty和SpringBoot实现一个轻量级RPC框架-Client端请求响应同步化处理

    前提 前置文章: <基于Netty和SpringBoot实现一个轻量级RPC框架-协议篇> <基于Netty和SpringBoot实现一个轻量级RPC框架-Server篇> & ...

  4. 基于C#的UDP通信(使用UdpClient实现,包含发送端和接收端)

    UDP不属于面向连接的通信,在选择使用协议的时候,选择UDP必须要谨慎.在网络质量令人十分不满意的环境下,UDP协议数据包丢失会比较严重.但是由于UDP的特性:它不属于连接型协议,因而具有资源消耗小, ...

  5. 在socket的server端处理client端发来的数据

    一.楔子 最近做了一个需求遇到一个坑,归结成一个小问题,其实就是在socket的server端处理client端发来的数据的问题,现将这个问题总结一下,本文将数据在server端以字典的形式存储. 另 ...

  6. Atitit Server Side Include  ssi服务端包含规范 csi  esi

    Atitit Server Side Include  ssi服务端包含规范 csi  esi 一.CSI (Client Side Includes)  1 1.1. 客户端包含1 1.2. Ang ...

  7. 从零开始学习Node.js例子四 多页面实现数学运算 续二(client端和server端)

    1.server端 支持数学运算的服务器,服务器的返回结果用json对象表示. math-server.js //通过监听3000端口使其作为Math Wizard的后台程序 var math = r ...

  8. 登录界面 Android简单http get请求(含server端)五 iOS端(特别篇)

    </pre><pre name="code" class="objc">NSDictionary *dict=@{@"user ...

  9. 用同一台PC的两个网口实现Iperf的server端和client端

    用同一台PC的两个网口实现Iperf的server端和client端 2015年10月20日 20:35:11 阅读数:2943 有时候需要发包,仅仅需要一定速率的流量,并不需要关心收到报文的大小,一 ...

随机推荐

  1. DAS存储未死,再次欲获重生

    当我们回想存储发展形态时.我们会想到DAS是最原始最主要的存储方式,在个人电脑.server等低端市场和场景上随处可见. 存储的原始形态也来自于DAS,常见的用于连接DAS和主机系统的协议/标准主要 ...

  2. 苹果开发——向App Store提交应用

    原地址:http://zengwu3915.blog.163.com/blog/static/2783489720137410539278/ 完成一个app应用后,肯定是要提交的,下面聊一下关于向Ap ...

  3. Oracle学习(五):多表查询

    1.知识点:能够对比以下的录屏进行阅读 SQL> --等值连接 SQL> --查询员工信息: 员工号 姓名 月薪 部门名称 SQL> select empno,ename,sal,d ...

  4. python字符串操作大全

    1.去空格 strip() >>> s = 'a b c d ' >>> s.strip() 'a b c d' 2.lstrip() 方法用于截掉字符串左边的空格 ...

  5. OFBiz:配置过程

    OFBiz使用了大量的配置文件,整个过程有点复杂.这里将配置过程大略整理了一下,方便后面查阅. 第一层:org.ofbiz.base.start.Start启动类.该类载入org/ofbiz/base ...

  6. Bootstrap 的模态框类

    事件类型 描述 show.bs.modal show 方法调用之后立即触发该事件.如果是通过点击某个作为触发器的元素,则此元素可以通过事件的relatedTarget 属性进行访问. shown.bs ...

  7. dll中使用exe中的变量

    注意:输出目录为:Result共享目录 1.exe项目: // EXE.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h" extern" ...

  8. SDK Manager 闪退的解决方式

    打开电脑的执行  也就是win+R键    然后在命令行里面打上android即可了

  9. ToString(“N2”)和ToString(“0.00”)之间的区别

    看来N会包含数千个分隔符,而0.00则不会. N2将以500.00的方式工作,但是当您有5000.00时,N2将显示为 5,000.00 代替 5000.00 If you do this inste ...

  10. hibernate中一对一映射

    一.hibernate中一对一映射有两种 1 主键方式,一张表的主键是通过另一张表的主键生成的 2 外键方式,一张表添加外键引用另一张表的主键,并添加唯一unique约束 二.下面进行简单例子,用户和 ...