读一些英文技术文章的时候,很多时候,发现有argument、parameter混用的情况。以前上学的时候,也碰到过类似的情况。为了彻底弄清楚,这两者的区别,我特意在英文社区里面查了很多东西。其中微软的一个解释,我最符合我的心意。 简单点说,一个是实参,一个是形参。通常来说,实参是函数调用时候的参数,形参是函数定义和实现的使用。 一个英文定义 这个定义在很多编程语言里面是通用的 To communi … 继续阅读
分类目录归档:编程
(三) Java函数式编程:函数式接口
Java内置的函数式接口 JDK 8 中提供了一组常用的核心函数接口: 接口 参数 返回类型 描述 Predicate T boolean 用于判别一个对象。 Consumer T void 用于接收一个对象进行处理但没有返回 Function<T, R> T R 转换一个对象为不同类型的对象 Supplier None T 提供一个对象 UnaryOperator T T 接收对象并返回同 … 继续阅读
(二) Java函数式编程:Lambda表达式
Lambda表达式简介 Java 8的最大变化是引入了Lambda表达式(Lambda 是希腊字母 λ 的英文名称)——一种紧凑的、传递行为的方式。编写Lambda表达式时,也会随之被编译成一个函数式接口。 Lambda 表达式 Lambda表达式的语法: (argument-list) -> {body} (参数列表) -> {若干语句;} 1) 参数列表: 可以为空,也可以非空. … 继续阅读
(一) 函数式编程
函数式编程 函数式编程是一种编程范式。什么叫范式?我的理解就是做事情的一种方法,做事情的一种规范。 函数式编程的一个重要特点就是,可以把函数本身作为参数传入另一个函数,也可以把函数作为返回结果。 在函数式编程中,函数是第一类对象,意思是说一个函数,既可以作为其它函数的输入参数值,也可以从函数中返回值,被修改或者被分配给一个变量。 函数式编程与命令式编程的区别 函数式编程与命令式编程最大的不同其实在 … 继续阅读
函数的长度
通过分析自己的代码,写代码的时候,我给自己定了几条纪律: 1.给自己制定了类代码行数不超过400 如果类的行数超过了400,需要重新思考,类设计是否合理,能不能拆分 2.函数行数不超过25 为什么是25行?我平时写代码的用的13寸的Mac Pro,编辑区的字体大小是17,25行正好是一屏。如果代码行数超过了25,那个就要注意了。需要反思自己的设计和实现是不是有问题、逻辑是否清晰、程序结构是不是有问 … 继续阅读
一致性哈希的Java实现
一致性哈希 借用维基百科的定义: consistent hashing is a special kind of hashing such that when a hash table is resized. In contrast, in most traditional hash tables, a change in the number of array slots causes near … 继续阅读