Enumerable#zip特性

看到文章Zip operator in Linq with .NET 4.0, Enumerable#zip是Ruby 1.8开始出现的特性,.NET 4/Silverlight 4也有这样的特性。与 Ruby 类似,Enumerable 同样关注你的感受,它为一些行为提供了多个名称。这主要是为了降低学习难度: 你可以根据你的技术背景选择熟悉的名称。

将两个序列按照顺序配对合并(想像一下拉链拉上的情形)为一个包含一序列元组的数组。 元组由每个原始序列的具有相同索引的元素组合而成,在System.Linq命名空间下,也就是一个Linq操作。

下面的代码示例演示如何使用 Zip<TFirst, TSecond, TResult> 方法来合并两个序列。

      int[] numbers = { 1, 2, 3, 4 };
      string[] words = { "one", "two", "three" };

      var numbersAndWords = numbers.Zip(words, (first, second) => first + " " + second);

      foreach (var item in numbersAndWords)
         outputBlock.Text += item + "\n";

      // This code produces the following output:

      // 1 one
      // 2 two
      // 3 three

此方法通过使用延迟执行实现。即时返回值为一个对象,该对象存储执行操作所需的所有信息。只有通过直接调用对象的 GetEnumerator 方法或使用 Visual C# 中的 foreach(或 Visual Basic 中的 For Each)来枚举该对象时,才执行此方法表示的查询。

该方法将第一个序列中的每个元素与第二个序列中有相同索引的元素合并。如果该序列不具有相同数目的元素,则直到它到达其中一个的末尾,该方法才合并序列。例如,如果一个序列有三个元素,另一个序列具有四个元素,那么结果序列将只有三个元素。

转载于:https://www.cnblogs.com/shanyou/archive/2010/06/20/1761607.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/263897.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

-bash: ulimit: pipe size: cannot modify limit: Invalid argument

从root账号切换到oracle账号时&#xff0c;出现了“-bash: ulimit: pipe size: cannot modify limit: Invalid argument”提示&#xff0c;一般出现这个错误是因为在设置.bash_profile时&#xff0c;没有注意空格的缘故造成。例如&#xff08;注意红色部分&#xff09; 例1&…

linux 安装nginx php mysql 配置文件在哪_linux下 php+nginx+mysql安装配置

我主要是用来安装php&#xff0c;以及nginx和php的交互。一 安装插件可以选择YUM安装或者源码编译安装gccgcc-czlibpcrepcre-devellibeventlibevent-devellibxml2libxml2-devellibmcryptlibmcrypt-develcurl-devellibpng-devellibtool-ltdl-develgd-developensslopenssl-develn…

项目开发经验谈之:设计失败的挫败感

项目经验谈之&#xff1a;设计失败的挫败感--老资格给你的压力 前言&#xff1a;最近一段时间似乎感触特别的多&#xff0c;心情也特复杂的。也许你曾经有过同样的际遇&#xff0c;也许没有&#xff0c;但是我的目的只有一个&#xff1a;分享&#xff0c;勉励&#xff01; 系列…

JDBC原理之层次结构

目录 JDBC的层次结构前言Collection角色Statement角色ResultSet角色JDBC工作的基本流程JDBC的层次结构 前言 JDBC API提供了以下接口和类&#xff1a; DriverManager: 这个类管理数据库驱动程序的列表。确定内容是否符合从Java应用程序使用的通信子协议正确的数据库驱动程序的连…

Java异常处理机制很有意思

版权声明&#xff1a;欢迎转载&#xff0c;请注明沉默王二原创。 https://blog.csdn.net/qing_gee/article/details/43015379 前言&#xff1a;在网络上看到一篇《深入理解Java异常处理机制》&#xff0c;看完感觉自己也有一点小想法&#xff0c;的确在很多Java学者的眼里&…

你如何去管理你的团队?

一下是我自己也不知道如何去回答的问题&#xff0c;或者只是想着这么解决&#xff0c;写在这里&#xff0c;那一天等我知道答案了再来给自己解答和完善。 作为一个团队负责人&#xff0c;你如何去管理的你团队&#xff0c;你怎么样来做开始启动你的团队&#xff0c;计划&#x…

2019-5-30-websocket下readyState常量

0 (CONNECTING) 正在链接中1 (OPEN) 已经链接并且可以通讯2 (CLOSING) 连接正在关闭3 (CLOSED) 连接已关闭或者没有链接成功转载于:https://www.cnblogs.com/zhangjiajun9404/p/10947697.html

Java自动注入默认_java – 自动注入与Spring

更新&#xff1a;2016年2月自动装配将在Spring Framework 4.3中正式支持。实现可以在这个GitHub commit看到。你不能自动安装的最终原因是Spring的DefaultListableBeanFactory.findAutowireCandidates(String&#xff0c;Class&#xff0c;DependencyDescriptor)方法的实现明确…

摘要

《秦前历史》13章 姜子牙 有一天&#xff0c;武王姬发问姜子牙&#xff1a;“我打算减轻刑罚而又能 树立我的权威&#xff0c;少施行一些赏赐而又能使人们从善&#xff0c;少颁布一些政令法规而民众又都能自觉按一定的规范行事。请问师尚父&#xff0c;怎样做才能实现这一点呢&…

关于ole

在word文档里&#xff0c;当插入一个图片或是电子表格&#xff0c;从而生成一个复合文档&#xff0c;这其中用到ole规范OLE文档&#xff1a;完善了早期的混合文档功能&#xff0c;不仅支持简单链接和嵌入&#xff0c;还支持在位激活、拖放等功能有一片文章你可以看看OLE概述 OL…

Uva489

Hangman Judge UVA - 489 In “Hangman Judge,” you are to write a program that judges a series of Hangman games. For each game, the answer to the puzzle is given as well as the guesses. Rules are the same as the classic game of hangman, and are given as f…

HTML5实现刮奖效果

原文:HTML5实现刮奖效果要实现刮奖效果&#xff0c;最重要的是要找到一种方法&#xff1a;当刮开上层的涂层是就能看到下层的结果。而HTML5的canvas API中有一个属性globalCompositeOperation&#xff0c;这个属性有多个值&#xff0c;而实现刮奖效果要用到的值就是destination…

Java多线程复习_Java多线程复习

一、线程的基本概念简单的说&#xff1a;线程就是一个程序里不同的执行路径在同一个时间点上cpu只会有一个线程在执行Java里的多线程是通过java.lang.Thread类来实现的每个线程都拥有自己独立的方法栈空间二、java线程的创建和启动第一种定义线程类实现Runnable接口Thread myTh…

HTML段落自动换行的样式设置

在HTML的P标记中&#xff0c;默认情况下是自动换行的。 如果你的段落是由中文字符或者英文单词组成的&#xff0c;这基本没什么问题。但是如果你的段落是由不间断的英文字母&#xff08;浏览器会认为是一个单词&#xff09;组成&#xff0c;则默认情况下不会换行&#xff0c;将…

DES加密/解密

1 /// <summary>2 /// DES加密(数据加密标准&#xff0c;速度较快&#xff0c;适用于加密大量数据的场合)3 /// </summary>4 /// <param name"EncryptString">待加密的密文</param>5 /// <param name&qu…

Spring中使用Spark连接的DataSource

在Spring中配置Spark hive-thriftserver的连接DataSource与配置其他数据源连接方式是一样的&#xff0c;如一般Oracle数据源配置&#xff0c;使用如下必须的Jar包&#xff1a;使用JDBC程序示例&#xff1a;package com.hadoop.test;import java.sql.Connection; import java.sq…

中文字符匹配java_java正则匹配HTML中a标签里的中文字符示例

java正则匹配HTML中a标签里的中文字符示例发布于 2020-8-12|复制链接摘记: 本文实例讲述了java正则匹配HTML中a标签里的中文字符。分享给大家供大家参考&#xff0c;具体如下&#xff1a;今天群里一位朋友问到了一个正则表达式的问题&#xff0c;有如下内容&#xff1a;xhtml特…

多语言制作工具(2013-01-24更新,支持VS2005、2008、2010、2012)(已开源)

前一段时间&#xff0c;制作了一个多语言资源文件制作工具&#xff0c;现在把这个工具集成到VS2005、VS2008&#xff0c;vs2010中&#xff0c;以增加VS自身资源编辑界面&#xff0c;对多资源编辑的麻烦&#xff0c;简化多语言资源文件的制作。 这个插件是和VS的项目绑定的&…

尚学人工智能课程---1、大数据和人工智能介绍

尚学人工智能课程---1、大数据和人工智能介绍 一、总结 一句话总结&#xff1a; 机器学习是什么&#xff1a;数据背后体现的客观算法&#xff1a;人在电脑上留下的大量日志可以反映人的性格和习惯 深度学习是什么&#xff1a;神经网络如果深度大于3&#xff0c;就是深度学习 神…

Flatten Binary Tree to Linked List (DFS)

Given a binary tree, flatten it to a linked list in-place. For example,Given 1/ \2 5/ \ \3 4 6The flattened tree should look like: 1\2\3\4\5\6代码&#xff1a; class Solution{ public:void flatten(TreeNode *root) {if(rootNULL) return;TreeNode* proot-…