函数声明

Java:Java8新特性

偶尔善良 提交于 2020-01-18 02:46:51
1:Lamda (1)Lambda 表达式 − Lambda 允许把函数作为一个方法的参数(函数作为参数传递到方法中)。 ( 2)lambda 表达式的语法格式: (parameters) -> expression // 或 (Type parameters) ->{ statements; } ( 3)lambda表达式的重要特征: 可选类型声明 :不需要声明参数类型,编译器可以统一识别参数值。 可选的参数圆括号 :一个参数无需定义圆括号,但多个参数需要定义圆括号。 可选的大括号 :如果主体包含了一个语句,就不需要使用大括号。如果语句块比较复杂,使用 {} 包起来。 可选的返回关键字 :如果主体只有一个表达式返回值则编译器会自动返回值,大括号需要指定明表达式返回了一个数值。 (4)lamda表达式简单示例: // 1. 不需要参数,返回值为 5 () -> 5 // 2. 接收一个参数(数字类型),返回其2倍的值 x -> 2 * x // 3. 接受2个参数(数字),并返回他们的差值 (x, y) -> x – y // 4. 接收2个int型整数,返回他们的和 (int x, int y) -> x + y // 5. 接受一个 string 对象,并在控制台打印,不返回任何值(看起来像是返回void) (String s) -> System.out.print(s) 2

Python学习(六)

可紊 提交于 2020-01-17 23:07:54
六、函数: 函数是重用的程序段。它们允许你给一块语句一个名称,然后你可以在你的程序的任何地方使用这个名称任意多次地运行这个语句块。这被称为调用函数。我们已经使用了许多内建的函数,比如len和range。 函数通过def关键字定义。def关键字后跟一个函数的标识符名称,然后跟一对圆括号。圆括号之中可以包括一些变量名,该行以冒号结尾。接下来是一块语句,它们是函数体。 1、定义函数: 例如: # Filename: function1.py def sayHello(): print('Hello World!') # block belonging to the function # End of function sayHello() # call the function sayHello() # call the function again 输出: C:\Users\Administrator>python D:\python\function1.py Hello World! Hello World! 工作原理: 我们使用上面解释的语法定义了一个称为 sayHello 的函数。这个函数不使用任何参数,因此在圆括号中没有声明任何变量。参数对于函数而言,只是给函数的输入,以便于我们可以传递不同的值给函数,然后得到相应的结果

JS中的作用域和作用域链

烈酒焚心 提交于 2020-01-17 23:06:27
本文原链接: https://cloud.tencent.com/developer/article/1403589 前言 作用域(Scope) 1. 什么是作用域 2. 全局作用域和函数作用域 3. 块级作用域 作用域链 1.什么是自由变量 2. 什么是作用域链 3. 关于自由变量的取值 作用域与执行上下文 解释阶段: 执行阶段: 参考文章和书籍 关于Fundebug 前言 JavaScript 中有一个被称为作用域(Scope)的特性。虽然对于许多新手开发者来说,作用域的概念并不是很容易理解,本文我会尽我所能用最简单的方式来解释作用域和作用域链,希望大家有所收获! 作用域(Scope) 1. 什么是作用域 作用域是在运行时代码中的某些特定部分中变量,函数和对象的可访问性。换句话说,作用域决定了代码区块中变量和其他资源的可见性。可能这两句话并不好理解,我们先来看个例子: function outFun2() { var inVariable = "内层变量2"; } outFun2();//要先执行这个函数,否则根本不知道里面是啥 console.log(inVariable); // Uncaught ReferenceError: inVariable is not defined 从上面的例子可以体会到作用域的概念,变量 inVariable 在全局作用域没有声明

前端面试题复习

时光怂恿深爱的人放手 提交于 2020-01-17 23:01:36
css实现水平居中的几种方式 top、left、right、bottom设置为0,用于实现居中 未知宽高:是不知道宽高而不是没有。 实例 css3:父元素display:flex;子元素:margin:auto;好用,有兼容问题 flex布局,兼容写法 css伪类(:before和:after) 在指定的元素内容(而不是元素本身)之前或者之后插入一个包含 content属性 指定内容的行内元素 HTML中的meta标签及其使用方法 哪个对象调用函数,函数里面的this指向哪个对象 this指向总结 箭头函数中的this指向问题详解 ES6常用语法总结 promise 例子很形象生动 原生ajax+封装ajax+使用方法 用Promise封装一下原生ajax git常用命令 js如何实现类的继承 js的new操作符做了哪些事情 JS基本数据类型和引用数据类型的区别及深浅拷贝 JS基本数据类型和引用数据类型的区别及深浅拷贝 js循环给li绑定事件实现 点击li弹出其索引值 和内容 闭包 例子: <script> //1. 用外层函数包裹要保护的变量和内层函数   function outer(){     var i=1;   //2. 外层函数返回内层函数对象到外部     return function(){       console.log(i++);     }   }   

JS声明变量的方式:var、let、const

不想你离开。 提交于 2020-01-17 16:28:09
1.const定义的变量不可以修改,而且必须初始化 。 const b = 2;//正确 // const b;//错误,必须初始化 console.log('函数外const定义b:' + b);//有输出值 // b = 5; // console.log('函数外修改const定义b:' + b);//无法输出 2.var定义的变量可以修改,如果不初始化会输出undefined,不会报错。 var a = 1; // var a;//不会报错 console.log('函数外var定义a:' + a);//可以输出a=1 function change(){ a = 4; console.log('函数内var定义a:' + a);//可以输出a=4 } change(); console.log('函数调用后var定义a为函数内部修改值:' + a);//可以输出a=4 3.let是块级作用域,函数内部使用let定义后,对函数外部无影响。 let c = 3; console.log('函数外let定义c:' + c);//输出c=3 function change(){ let c = 6; console.log('函数内let定义c:' + c);//输出c=6 } change(); console.log('函数调用后let定义c不受函数内部定义影响:' + c)

5-Go语言基础-程序结构

断了今生、忘了曾经 提交于 2020-01-17 05:46:56
名字 名字分类: 函数名 变量名 常量名 类型名 语句标号 包名 名字命名规则: Unicode字母或下划线开头,后面跟任意数量的字母数字下划线。大小写字母是不同的名字。 包级名字: 在函数外部定义的名字交配包级名字。 在函数外部定义的函数叫包级函数,包级函数名也是包级名字。 可导出(外部可见性) 一个包级名字首字母大写,那么别的包在引用本包时,可以使用该名字,使用方式: 包名.名字 其他的名字都不能被外部包访问。 名字命名建议 建议使用驼峰命名;QuoteRuneToASCII 缩写使用纯小写或大写。htmlEscape HTMLEscape而不是HtmlEscape 名字使用时间越长,它的名字应该更具体。不用怕名字过长,因为名字在编译时会被替换掉。 关键字 25个关键字 package import var func type const chan interface map struct switch case fallthrough default if else for range select goto break continue return go defer 声明相关的关键字 包的声明:package 包的导入:import 函数声明:func 变量声明:var 类型声明:type 常量声明:const 常量的潜在类型时基础类型:数字、Boolean、string

ES6 学习总结

ぃ、小莉子 提交于 2020-01-17 03:51:34
1.块级作用域的引入 在ES6之前,js只有全局作用域和函数作用域,ES6中let关键字为其引入了块级作用域。 { var a = 5; let b = 6; } console.log(a); //5 console.log(b); //b is undefined 在ES6之前,js只有全局作用域和函数作用域,ES6中let关键字为其引入了块级作用域。 2.暂时性死区 var声明的变量可以在声明之前使用,相当于默认为其声明其值为undefined了; 但是,let声明的变量一旦用let声明,那么在声明之前,此变量都是不可用的,术语称为“暂时性死区”。 console.log(a); //undefined var a=8; console.log("----------"); console.log(b); //控制台报错 let b=9; 所以我们要养成变量先声明再使用的好习惯。 3.const命令 const用来定义常量,相当于java中的final关键字。 并且const声明常量之后就必须立即初始化 4.解构赋值 let [a,b,c] = [1,2,3]; let{x1,x2} = {x2:5,x1:6}; const [a,b,c,d,e]= "hello"; function add([i,j]) {}---add([5,6]); 5.字符串 Unicode表示法

js基础

放肆的年华 提交于 2020-01-17 01:48:00
文章目录 js基础第一天 1、js的作用 2、js概念和组成 2.1、js概念 2.2、js组成 3、js注意点 4、js中的5中输出语句(前期写js代码,每一句写完加;) 5、js中的变量 5.4.1、变量使用的几种形式,先声明 再使用 5.4.2、变量的命名的规则和规范: 5.4.2、交换变量的值:倒可乐(var temp = a; a=b; b=temp;) 6、js中的数据类型 6.1、js中的数据类型数字类型基本介绍:(控制台蓝色) 6.2、字符串类型:(控制台的颜色是黑色) 6.3、boolean类型(深蓝):true/false 6.4、(非正常值) undefined(灰色)(变量声明未赋值变量默认undefined)和null(在web api阶段,如果需要通过js获取页面中的元素,没有获取到,此时就是null(灰色)(空)) null是object类型(特殊情况) 6、字面量赋值与变量赋值: 7、运算符: js基础第二天 js基础第三天 js基础第四天 js基础第五天 js基础第六天 js基础第一天 1、js的作用 1、远古时期:表单校验 2、现代无所不能:前端、后端node.js、交互ajax、命令行工具开发(node.js)、桌面程序、app开发、游戏开发、物联网 2、js概念和组成 2.1、js概念 1、js是一种运行在浏览器端的脚本语言

02)学习 Kotlin 编程语言

痞子三分冷 提交于 2020-01-17 01:33:23
学习 Kotlin 编程语言 Kotlin 是世界各地的 Android 开发者广泛使用的一种编程语言。本主题可充当 Kotlin 速成课程,能够帮助您快速上手。 变量声明 Kotlin 使用两个不同的关键字(即 val 和 var)来声明变量。 val 用于值从不更改的变量。您不能为使用 val 声明的变量重新赋值。 var 用于值可以更改的变量。 在以下示例中,count 是一个 Int 类型的变量,为其赋予的初始值为 10: var count : Int = 10 Int 是一种表示整数的类型,它是可以在 Kotlin 中表示的众多数值类型之一。与其他语言类似,您也可以使用 Byte、Short、Long、Float 和 Double,具体取决于您的数值数据。 var 关键字表示您可以根据需要为 count 重新赋值。例如,您可以将 count 的值从 10 更改为 15: var count : Int = 10 count = 15 不过,有些值不应更改。假设有一个名为 languageName 的 String。如果您要确保 languageName 的值始终为“Kotlin”,则可以使用 val 关键字来声明 languageName: val languageName : String = "Kotlin" 通过这些关键字,您可以明确指出哪些变量的值可以更改

Shader 基础

时间秒杀一切 提交于 2020-01-17 01:05:59
顶点和片元着色器 Vertex shader program(顶点着色程序)和 Fragment shader program(片断着色程序)分别被 Programmable Vertex Processor(可编程顶点处理器)和Programmable Fragment Processo(可编程片断处理器)所执行。 顶点着色程序从 GPU 前端模块(寄存器)中提取图元信息( 顶点位置、法向量、纹理坐标等 ),并完成顶点坐标空间转换、法向量空间转换、光照计算等操作,最后将计算好的数据传送到指定寄存器中;然后片断着色程序从中获取需要的数据,通常为“ 纹理坐标、光照信息等 ”,并根据这些信息以及从应用程序传递的纹理信息(如果有的话)进行每个片断的颜色计算,最后将处理后的数据送光栅操作模块。 由于 GPU 对数据进行并行处理,所以每个数据都会执行一次 shader 程序程序。 即, 每个顶点数据都会执行一次顶点程序; 每个片段都会执行一次片段程序。 什么是片断?片断和像素有什么不一样?所谓片断就是所有的三维顶点 在光栅化之后的数据集合,这些数据还没有经过深度值比较,而屏幕显示的像素都是经过深度比较的 开始 Cg 之旅 Cg 支持 7 种基本的数据类型: float, 32 位浮点数据,一个符号位。浮点数据类型被所有的 profile 支持(但是 DirectX8 pixel