一、List中只能存放相同类型的元素。

  ++:将两个List合并成一个List。例,[1,2,3]++[4,5,6],结果是[1,2,3,4,5,6]。

    : :将“:”前面的元素添加到“:”后面的List中。新添加的元素在List的头部位置。例,1:[2,3,4,5,6],结果是[1,2,3,4,5,6]。

   !! :取List下标位置的元素。例,[1,2,3,4,5,6]!!0,结果是1。

  elem:判断某个元素是否存在于List当中。例,elem 1 [1,2,3,4,5,6],结果是true。中缀形式,1 `elem` [1,2,3,4,5,6]。

  PS:中缀形式中的 ` 不是单引号,是键盘上“~”键下面的符号。

二、比较List。

      [3] > [2,1]的结果是true。

  head:取出List的第一个元素。

  tail:取出除List第一个元素外的所有元素。

  last:取出List的最后一个元素。

  init:取出除List最后一个元素外的所有元素。

  length:返回List的长度值。

  null:判断List是否为空。

  reverse:返回一个List的反转List。

  maximum:取List中的最大值。

  minimum:取List中的最小值。

  sum:计算List元素中的和。

  take:取List的前N个元素。例,take 2 [1,2,3,4,5,6],结果是[1,2]。

drop:取List的后X个元素。例,drop 2 [1,2,3,4,5,6],结果是[3,4,5,6]。

三、Range相关

  [1..10] 相当于 [1,2,3,4,5,6,7,8,9,10]

  ['a'..'g'] 相当于 ['a','b','c','d','e','f','g']

  [3,6..10] 相当于 [3,6,9]

  cycle:无限重复后面的内容。例,take 3 (cycle [1,2]),结果是[1,2,1]。

  repeat:无限重复后面的元素。例,take 2 (repeat 1),结果是[1,1]。

  replicate:重复N次后面的元素。例,replicate 2 [1,2],结果是[[1,2],[1,2]]。

四、集合的表示

  mod:取余操作。

  odd:判断一个数是否是奇数。

  [x*2|x<-[1..10]] 相当于 [2,4,6,8,10]

  [x|x<-[1..10],odd x,mod x 3 == 0] 相当于 [3,9]

Haskell List相关操作的更多相关文章

  1. 从零自学Hadoop(20):HBase数据模型相关操作上

    阅读目录 序 介绍 命名空间 表 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  2. 从零自学Hadoop(21):HBase数据模型相关操作下

    阅读目录 序 变量 数据模型操作 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  3. 理解CSV文件以及ABAP中的相关操作

    在很多ABAP开发中,我们使用CSV文件,有时候,关于CSV文件本身的一些问题使人迷惑.它仅仅是一种被逗号分割的文本文档吗? 让我们先来看看接下来可能要处理的几个相关组件的词汇的语义. Separat ...

  4. Liunx下的有关于tomcat的相关操作 && Liunx 常用指令

    先记录以下liunx下的有关于tomcat的相关操作 查看tomcat进程: ps-ef|grep java (回车) 停止tomcat进程: kill -9 PID (进程号如77447) (回车) ...

  5. pip的相关操作

    >Python中的pip是什么?能够做些什么? pip是Python中的一个进行包管理的东西,能够下载包.安装包.卸载包......一些列操作 >怎么查看pip的相关信息 在控制台输入: ...

  6. Haskell Tuple相关总结

    一.相关操作 zip:将两个List合并成一个元组序对的List. fst:返回元组序对第一个元素. snd:返回元组序对第二个元素. PS:元组序对是元组中只有两个元素的元组. 二.与List的比较 ...

  7. python操作mysql数据库的相关操作实例

    python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...

  8. php对二维数组进行相关操作(排序、转换、去空白等)

    php对二维数组进行相关操作(排序.转换.去空白等) 投稿:lijiao 字体:[增加 减小] 类型:转载 时间:2015-11-04   这篇文章主要介绍了php对二维数组进行相关操作,包括php对 ...

  9. SQL语言和DML相关操作以及相应的运算符

    SQL 1.结构化查询语言 2.特点 a.第四代编程语言,更接近自然语言 b必须有数据库系统解释执行 c.对象名,关键字不区分大小写 d.字符串必须要用单引号引起来,不能用双引号 e.每条语句最后用分 ...

随机推荐

  1. CAS单点登录和spring securtiy集成

    说明:本文章主要建立在spring-security早已集成在系统中的前提下: 1.需要创建一个spring-security.xml文件并关联在applicationContext.xml文件中:& ...

  2. less简单用法

    http://less.bootcss.comless工具:koala工具url:http://koala-app.com/index-zh.html// less import: // less 文 ...

  3. 换个新的思路 代替解压jar包 例证:wechat4j 框架中的templateMsg类

    很多朋友在写java的程序的时候都喜欢用第三方的jar包和框架,有可能遇到jar包中的内容已经跟不上官方开发者文档的更新,导致部分内容出错了,这个时候可能就要放弃这个jar的使用,但是这个jar中的其 ...

  4. C程序中常见的内存操作错误

    对C/C++程序员来说,管理和使用虚拟存储器可能是个困难的, 容易出错的任务.与存储器有关的错误属于那些令人惊恐的错误, 因为它们在时间和空间上, 经常是在距错误源一段距离之后才表现出来. 将错误的数 ...

  5. Linux内核创建一个新进程

    张雨梅   原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-10000 创建新进程 如果同一个程序被多 ...

  6. JS新API标准 地理定位(navigator.geolocation)

    在新的API标准中,可以通过navigator.geolocation来获取设备的当前位置,返回一个位置对象,用户可以从这个对象中得到一些经纬度的相关信息. navigator.geolocation ...

  7. freeMarker生成静态页面

    项目结构图 footer.ftl des==>${f.des}<br/> <a href="http://www.baidu.com"> 百度 < ...

  8. 使用 StringBuilder

    嘿嘿,请不要说我是偷取,我只是借鉴一下.. String 对象是不可改变的.每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串 对象,这就需要为该新对象分配新的空间 ...

  9. centos 忘记密码

    装了个  centos 6.8  安装的时候 要输入 新用户和密码 用 新的用户密码 进去后 各种没权限  重新修改 root 密码   一切OK 步骤 1.重新启动Centos,在启动过程中,长按“ ...

  10. java中的成员变量和局部变量区别

    1.作用域不同 成员变量的作用域在整个类内部都是可见,可用的: 局部变量的作用域仅限于定义它的方法,不能被其它方法调用: 2.初始值不同 java会给成员变量一个初始值,初始值为0: java不会给局 ...