草庐IT

allow_none

全部标签

Scala 使用 Option、Some、None,避免使用 Null

避免null使用大多数语言都有一个特殊的关键字或者对象来表示一个对象引用的是"无",在Java,它是null。在Java里,null是一个关键字,不是一个对象,所以对它调用任何方法都是非法的。但是这对语言设计者来说是一件令人疑惑的选择。为什么要在程序员希望返回一个对象的时候返回一个关键字呢?Scala的Option类型为了让所有东西都是对象的目标更加一致,也为了遵循函数式编程的习惯,Scala鼓励你在变量和函数返回值可能不会引用任何值的时候使用Option类型。在没有值的时候,使用None,这是Option的一个子类。如果有值可以引用,就使用Some来包含这个值。Some也是Option的子类

Scala 使用 Option、Some、None,避免使用 Null

避免null使用大多数语言都有一个特殊的关键字或者对象来表示一个对象引用的是"无",在Java,它是null。在Java里,null是一个关键字,不是一个对象,所以对它调用任何方法都是非法的。但是这对语言设计者来说是一件令人疑惑的选择。为什么要在程序员希望返回一个对象的时候返回一个关键字呢?Scala的Option类型为了让所有东西都是对象的目标更加一致,也为了遵循函数式编程的习惯,Scala鼓励你在变量和函数返回值可能不会引用任何值的时候使用Option类型。在没有值的时候,使用None,这是Option的一个子类。如果有值可以引用,就使用Some来包含这个值。Some也是Option的子类

解决mysql8报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT

1.今天刚装了mysql8.0.13,试着分配几个账号和权限,结果报错:2.查资料得知mysql8的分配权限不能带密码隐士创建账号了,要先创建账号再设置权限输入命令:Grantallprivilegesontest.*to'test'@'%';又报错:YouarenotallowedtocreateauserwithGRANT;不允许使用grant命令,怎么会没权限,奇怪。3.后来想到了mysql数据表user中的host于是修改host:updateusersethost='%'whereuser='test';再执行两次Grantallprivilegesontest.*to'test'@

解决mysql8报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT

1.今天刚装了mysql8.0.13,试着分配几个账号和权限,结果报错:2.查资料得知mysql8的分配权限不能带密码隐士创建账号了,要先创建账号再设置权限输入命令:Grantallprivilegesontest.*to'test'@'%';又报错:YouarenotallowedtocreateauserwithGRANT;不允许使用grant命令,怎么会没权限,奇怪。3.后来想到了mysql数据表user中的host于是修改host:updateusersethost='%'whereuser='test';再执行两次Grantallprivilegesontest.*to'test'@