首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在必须返回true或false的函数上键入提示返回值是不好的做法

首先,让我们明确回答问题的核心:

代码语言:txt
复制
在必须返回true或false的函数上键入提示返回值是不好的做法。

接下来,我们将详细解释为什么这是一个不好的做法,以及可能带来的影响。

1. 代码可读性

在函数上键入提示返回值,将直接改变代码的可读性。当其他开发人员阅读这段代码时,他们可能会疑惑地阅读到返回值,从而影响他们对代码逻辑的理解和预测。

2. 维护性

当代码逻辑发生变化时,这种提示返回值的方法将增加维护成本。开发人员需要检查每个返回值,以确保它们在代码中正确地使用,这可能导致额外的调试时间和成本。

3. 可扩展性

提示返回值的方法将影响代码的可扩展性。当项目逐渐庞大和复杂时,开发人员可能会使用不同的方法来返回值,而这种提示返回值的方法将无法适应这种变化。

4. 测试

在测试过程中,这种提示返回值的方法可能导致测试困难。测试人员可能会在测试中使用不同的方法来验证返回值,从而增加测试的时间和成本。

5. 稳定性

在必须返回true或false的函数上键入提示返回值,可能会导致程序运行不稳定。如果返回值不符合预期,可能会导致程序中断或数据损坏。

因此,在必须返回true或false的函数上键入提示返回值是不好的做法。相反,开发人员应该直接返回true或false,以确保代码可读性、维护性、可扩展性、测试和稳定性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

运维必学 | 条件语句-从零开始学Windows批处理(Batch)编程系列教程

0x00 批处理(Batch)命令返回值 描述: 在 Windows 批处理脚本中,类似于 Shell 其也是支持 if...eles 条件判断, 不过在介绍语句前我们先来看看其命令行执行返回值,你可以将其认为返回错误参数相当于...获取返回值errorlevel的方法就是,在执行命令后立马调用%errorlevel%变量,若是执行成功则返回0,不成功则返回非零。...(或者状态),通过if errorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。...温馨提示: IF ERRORLEVEL 是用来测试它的上一个DOS命令的返回值的,注意只是上一个命令的返回值,而且返回值必须依照从大到小次序顺序判断。...,返回的结果是 true。

69120

干货 | 如何写一个更好的Python函数?

参数有没有都可以,但从Python内部的角度来看,返回值是必须要有的。你不可能创建一个没有返回值的函数。如果函数没有返回值,Python会“强制”返回None。...print(a + b) ... >>> b = add(1, 2) 3 >>> b >>> b is None True 你会发现 b 的返回值实际上是 None。...当给定函数没有返回值时,有一些常见的原因: “它所做的只是[一些与I / O相关的事情,比如将一个值保存到数据库中]。我不能返回任何有用的东西。” 我不同意。如果操作顺利完成,函数可以返回True。...首先,尽最大努力避免这种做法。用好了令人惊讶,用不好非常危险。 其次,即使这样做不可行,复制某个参数的成本太高,你也可以回到上一条建议。 “我需要返回多个值。单独返回一个值是没有意义的。”...幂等函数很容易测试,因为在使用相同的参数时,它们总是返回相同的结果。 测试仅仅是检查通过不同调用返回值的预期值。更重要的是,这些测试很快,这是单元测试中一个重要且经常被忽视的问题。

60720
  • 干货 | 如何写一个更好的Python函数?

    参数有没有都可以,但从Python内部的角度来看,返回值是必须要有的。你不可能创建一个没有返回值的函数。如果函数没有返回值,Python会“强制”返回None。...print(a + b) ... >>> b = add(1, 2) 3 >>> b >>> b is None True 你会发现 b 的返回值实际上是 None。...当给定函数没有返回值时,有一些常见的原因: “它所做的只是[一些与I / O相关的事情,比如将一个值保存到数据库中]。我不能返回任何有用的东西。” 我不同意。如果操作顺利完成,函数可以返回True。...首先,尽最大努力避免这种做法。用好了令人惊讶,用不好非常危险。 其次,即使这样做不可行,复制某个参数的成本太高,你也可以回到上一条建议。 “我需要返回多个值。单独返回一个值是没有意义的。”...幂等函数很容易测试,因为在使用相同的参数时,它们总是返回相同的结果。 测试仅仅是检查通过不同调用返回值的预期值。更重要的是,这些测试很快,这是单元测试中一个重要且经常被忽视的问题。

    61010

    怎样才能写好一个 Python 函数

    参数有没有都可以,但从 Python 内部的角度来看,返回值是必须要有的。你不可能创建一个没有返回值的函数。如果函数没有返回值,Python 会“强制”返回 None。...print(a + b) ... >>> b = add(1, 2) 3 >>> b >>> b isNone True 你会发现 b 的返回值实际上是 None。...即使你写的函数没有返回语句,它仍然会返回一些东西。而且,每个函数都应该返回一个有用的值,测试起来也会更方便。毕竟,你写的代码应该能够被测试。 试想一下,测试上面的 add 函会有多艰难。...如果操作顺利完成,函数可以返回 True。 “我们修改了其中一个参数,将其用作参考参数。” 这里有两点需要注意。首先,尽最大努力避免这种做法。用好了令人惊讶,用不好非常危险。...幂等函数很容易测试,因为在使用相同的参数时,它们总是返回相同的结果。 测试仅仅是检查通过不同调用返回值的预期值。更重要的是,这些测试很快,这是单元测试中一个重要且经常被忽视的问题。

    57520

    【RL-TCPnet网络教程】第36章 RL-TCPnet之FTP服务器

    第2个参数是数据缓冲地址,存储要写入的数据。   第3个参数是要写入的数据大小,单位字节。   返回值,返回实际写入文件的字节数。...返回值,返回__TRUE表示删除成功,返回__FALSE表示删除失败。...第2个参数是新命名文件或者文件夹名字,即新的文件名。 返回值,返回__TRUE表示重命名成功,返回__FALSE表示重命名失败。...第3个参数用于文件检索的字符,类似于我们在电脑端输入关键字符进行文件或者文件夹的检索。  第4个参数是输出缓冲区的大小,单位字节。 返回值,返回写入到输出缓冲区的字节数。...第1个参数是远程设备的IP地址。 第2个参数是远程设备的端口号。 返回值,返回__TRUE表示允许此远程连接,返回__FALSE表示不允许此远程连接。

    1.2K00

    推荐收藏系列:Spring boot 2.x注解Annotation大全

    参数要紧跟在带有@Valid注解的参数后面,@Valid注解所标注的就是要检验的参数 可注释在字段、方法、构造器、参数上 @AssertFalse 所注解的元素必须是Boolean类型,并且值为false...可注释在字段、方法、构造器、参数上 @AssertTrue 所注解的元素必须是Boolean类型,并且值为true 可注释在字段、方法、构造器、参数上 @DecimalMax 所注解的元素必须是数字,...并且它的值要小于或等于给定的BigDecimalString值 可注释在字段、方法、构造器、参数上 @DecimalMin 所注解的元素必须是数字,并且它的值要大于或等于给定的BigDecimalString...值 可注释在字段、方法、构造器、参数上 @Digits 所注解的元素必须是数字,并且它的值必须有指定的位数 可注释在字段、方法、构造器、参数上 @Future 所注解的元素的值必须是一个将来的日期 可注释在字段...、方法、构造器、参数上 @Max 所注解的元素必须是数字,并且它的值要小于或等于给定的值 可注释在字段、方法、构造器、参数上 @Min 所注解的元素必须是数字,并且它的值要大于或等于给定的值 可注释在字段

    68520

    Python 函数装饰器和闭包

    示例的 register 装饰器原封不动地返回被装饰的函数,但是这种技术并非没有用处。很多 Python Web 框架使用这样的装饰器把函 数添加到某种中央注册处。...创建一个装饰器工厂函数,把参数传给它,返回一个装饰器,然后再把它应用到要装饰的函数上。...为了便于启用或禁用 register 执行的函数注册功能,我们为它提供一个可选的 active 参数,设为 False 时,不注册被装饰的函数。...从概念上看,这个新的 register 函数不是装饰器, 而是装饰器工厂函数。调用它会返回真正的装饰器,这才是应用到目标 函数上的装饰器。...为了接受参数,新的 register 装饰器必须作为函数调用: registry = set() def register(active=True): def decorate(func):

    63410

    内功修炼之lodash——function系列(面试高频考点)

    func 会传入最后一次传入的参数给这个函数。 随后调用的函数返回是最后一次 func 调用的结果。 注意: 如果 leading 和 trailing 都设定为 true。...=true] (boolean) 指定调用在节流开始前 [options.trailing=true] (boolean) 指定调用在节流结束后 返回值 (Function) 返回节流的函数 难度系数...如果提供了 resolver,就用 resolver 的返回值作为 key 缓存函数的结果。 默认情况下用第一个参数作为缓存的 key。 func 在调用时 this 会绑定在缓存函数上。...参数 func (Function) 需要缓存化的函数 [resolver] (Function) 这个函数的返回值作为缓存的 key 返回值 (Function) 返回缓存化后的函数 难度系数...如果执行的那个函数内部依赖this,那传入的必须是箭头函数或者bind过this的函数。

    1.3K10

    数组原生api以及es6+函数式编程(curry)实现lodash函数

    func 会传入最后一次传入的参数给这个函数。随后调用的函数返回是最后一次 func 调用的结果。 注意: 如果 leading 和 trailing 都设定为 true。...boolean) 指定调用在节流开始前 [options.trailing=true] (boolean) 指定调用在节流结束后 返回值 (Function) 返回节流的函数 难度系数:★★★★★ 建议最长用时...如果提供了 resolver,就用 resolver 的返回值作为 key 缓存函数的结果。默认情况下用第一个参数作为缓存的 key。func 在调用时 this 会绑定在缓存函数上。...参数 func (Function) 需要缓存化的函数 [resolver] (Function) 这个函数的返回值作为缓存的 key 返回值 (Function) 返回缓存化后的函数 难度系数:★★...如果执行的那个函数内部依赖this,那传入的必须是箭头函数或者bind过this的函数。

    80711

    【单子】说白了不过就是【自函子范畴】上的一个【幺半群】而已?请说人话!!

    直接上代码,看看 Monad 在实际应用中是怎么写的: var fs = require("fs"); // 纯函数,传入 filename,返回 Monad 对象 var readFile = function...可以直接这样理解:Monad 是一种特殊的数据结构,它能把值进行包装,然后链接执行;王垠在《对函数式语言的误解》中准确了描述了 Monad 本质: Monad 本质是使用类型系统的“重载”(overloading...),把这些多出来的参数和返回值,掩盖在类型里面。...,所以无法与外部进行 IO 操作,不能存在 a -> IO 或 IO -> a 这种操作,必须为 IO -> IO(Promise -> Promise),也就是必须为「自函子」,async 函数中都是自函子映射...咱们也用惰性思维去思考:现在很难理解,那我是必须要现在去理解吗?

    1.1K20

    spring常用注解

    2 @RequestMapping @RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。...的值是数组,可以将多个url映射到同一个方法 窄化请求映射 : 在class上添加@RequestMapping(url)指定通用请求前缀, 限制此类下的所有方法请求url必须以请求前缀开头,通过此方法对...、xml等格式的数据并绑定到controller方法的参数上。...value:参数名字,即入参的请求参数名字,如value=“item_id”表示请求的参数区中的名字为item_id的参数的值将传入; required:是否必须,默认是true,表示请求中一定要有相应的参数...中的key 图片 @ModelAttribute还可以将方法的返回值传到页面 在商品查询列表页面,通过商品类型查询商品信息。

    76320

    2018年7月22日用python写个人博客时遇到的问题

    ,有c标志的的表示类型 在vscode中ctrl+f是选中文件中所有相同的变量,ctrl+h是替换所有选中的变量 不明白的点: 什么时候要有返回值,返回值应该返回什么 可变参数上传之后都是以元组的形式展示的...(已解决) 返回值为什么规定要用列表,不能用字典,例子是返回所有文章和返回个人所有文章 定义的函数有时候需要参数,那个参数的书写有什么规定吗 登陆注册要有返回值,返回的是True和False...加密有返回值,返回的是:加密后的那个字符串 退出没有返回值 一个函数执行完的返回值,必须要和下一个执行的函数接收的参数的名字一样吗?...       查看自己的文章  返回的是我的所有文章的字典 show_article_single(title)  展示单篇文章    返回true或false show_article_list...(*articles) 展示多篇文章    返回true或false

    38720

    深入理解JavaScript函数式编程

    中函数是一等公民,函数可以存储在变量中、函数作为参数、函数可以作为返回值.」...,如下函数可以作为返回值,如下代码一般来说函数作为返回值是「闭包」的表现,关于闭包的概念会在后面详细的学习 function test(x){ return function(y){ return...true,只有所有元素全部不匹配条件才会返回false const some = (arr, fn) => { let result = false; for (const value...是无法知道的 //maybe 函子的问题 console.log(r); MayBe 函子其实就是在容器的内部判断值是否为空,如果为空就返回一个值为空的函子。...MayBe 函子的作用是处理外部的空值情况,防止空值的异常 IO 函子内部封装的值是一个函数,把不纯的操作封装到这个函数,不纯的操作交给调用者处理 Monad 函子内部封装的值是一个函数(这个函数返回函子

    4.3K30

    在 Visual Studio 上更好开发 Python 的六大功能!

    此项功能除了能够切换至您所熟悉的 Python 版本进行开发外,更可确保您的程序在不同 Python 版本下运行的函式相容性是合法的,如下图代码当中的 print 函式,在 Python 2.7 环境下为合法的...如您安装直译器的路径非预设路径或欲自订直译器函示库、直译器位元时,您亦可自行于 Visual Studio 新增自订直译器。...此时会发现 Visual Studio 自动侦测到非该环境版本所支持的函式,透过下引号提示使用者错误的代码片段,提供使用者快速寻找出不同版本间不相容之处,以便快速进行修正工作。 ?...或者您能够在不同环境中安装不同版本的套件,以便测试在不同的版本中所使用到套件的函式是否有不一样之处。...、函式呼叫参数与返回值资讯、快速谘询和自动完成文字等辅助功能,让您在撰写物件或者呼叫函式时能够更有信心,提高撰写效率。

    1.6K10

    使用JSDoc提高代码的可读性

    JSDoc 在写法上有着特定的要求,比如说行内也必须要是这样的结构 /** XXX */,如果是 /* XXX */ 则会被忽略。...而多行的写法是比较常用的,在 vscode 中可以直接在函数上方键入 /** 然后回车,编辑器会自动填充很多的内容,包括参数类型、参数描述以及函数描述的预留位置,使用TAB键即可快速切换。 ?...而另外一个函数的返回值,如果我们在函数上添加了@return后,那么调用该函数并获取返回值的变量类型也会被设置为@return对应的类型。...boolean} */ 在 vscode 中键入以上的注释,都可以很方便的得到动态提示。...必然会存在着大量的复杂结构类型的变量、参数或返回值。 关于函数参数,在 JSDoc 中两种方式可以描述复杂类型: ?

    1.4K20

    C#-筆記-基礎

    表達式2:表達式3; 表達式1是一個關係表達式 如果表達式1的值是ture 那麼表達式2的值就是整個三元表達式的值 如果表達式1的值是false 那麼表達式3的值就是整個三元表達式的值 注意:表達式...同理反之:int min = int.MinValue; 方法 我們在main函數中,調用Test()函數(方法),我們管main()函數稱之為調用者,管Test函數是被調用者。...如果被調用用著者想要得到調用者的值: 1.傳遞參數; 2.使用靜態字段來模擬全局變量; 如果調用者想要獲得被調用者的值: 1.返回值 不管是實參還是形參都是在內存中開闢了空間。...方法的功能要單一 方法中比較忌諱出現用戶提示;一般盡量不出現這種情況。 OUT,ref,params out參數,如果在一個方法中,返回多個相同類型的值的時候,可以考慮返回一個數組。...方法的重載 定義:就是方法的名稱相同方法的參數不同。 1.如果參數個數相同那麼類型就不能相同。 2.如果類型相同參數的個數就不能相同。 方法的重載和返回值沒有關係。

    48530

    Java开发者的Python快速进修指南:函数

    函数名是你给函数起的名字,应该具有描述性。 参数是可选的,你可以在括号内指定函数需要接收的输入参数。如果没有参数,括号仍然是必须的,但可以留空。 函数体是函数的具体实现,包含一系列的语句和逻辑。...如果可迭代对象中所有元素都为真,返回True;否则返回False。如果可迭代对象为空,则返回True。...如果可迭代对象中任何一个元素为真,返回True;否则返回False。如果可迭代对象为空,则返回False。...装饰器函数 在Python中,装饰器是一种特殊的函数,它可以接受一个函数作为参数,并返回一个新的函数。装饰器函数通常用于在不改变原函数代码的情况下,对函数进行扩展或修改。...装饰器函数是一种特殊的函数,可以接受一个函数作为参数,并返回一个新的函数。装饰器函数通常用于在不改变原函数代码的情况下,对函数进行扩展或修改。通过使用装饰器,我们可以在函数调用前后执行额外的操作。

    27820

    无须字母构建XSS向量

    相同水平的前提下,在攻击向量中不使用任何字母,且必须调用alert(1)。 闲话少说,看这里: ""[(!1+"")[3]+(!...1(false)开始,将“”添加到一个non-String值中是一个快速且直接的方法,所以(!1+””)我们得到false。 将字符带入索引3中的“false”(结果切好是s),在(!...或许这么做也行,但是我选择更加有深度的做法,函数有什么内置属性?如何构造函数? 如果你打开一个JavaScript控制台,键入“”[“sub”][“constructor”],你看到了什么?...当我们尝试调用alert(1)时,就需要连接更多的“true”和“false”来构建alert字符串,其后在加上+”(1)”。...你可以在地址栏键入“javascript:”复制粘贴上面的代码点击回车键进行测试。 我喜欢你能够喜欢JavaScript语言中这种十分隐晦的表达方式,Happy hacking!

    76890
    领券