202108-20 策略模式:告别if else 目录策略模式引入策略模式源码分析策略模式的典型应用总结阅读完本篇文章你将了解到什么是策略模式,策略模式的优缺点,以及策略模式在源码中的应用。策略模式引入在软件开发中,我们常常会遇到这样的情况,实现某一个功能有多条途径,每一条途径对应一种算法,此时我们可以使用一种设计模式来实现灵活地选择解决途径,也能够方便地增加新的解决途径。譬如商场购物场景中,有些商品按原价卖,商场可能为了促销而推出优惠活动,有些... 继续阅读 >
202105-26 python if三元表达式实例用法详解 1、说明使用一行代码快速判断,更换复杂的多行if语句,使代码能够简单地维护。if三元表达式的阅读方式有点不符合阅读习惯。从句子中间的if条件开始读,条件满足的话,得到左侧的值x,条件不满足的话,得到else下面的值x。2、实例result=xifx>0else-x>>>x=-15>>>xifx>0else-x15知识点扩展:publicclassjava{publicstaticvoidmain(String[]args){intx=100;inty=101;intMAX=(x>y)?x:y;... 继续阅读 >
202103-30 基于python for in if 连着写与分开写的区别说明 如下:links.extend(linkforlinkinget_links(html)ifre.match(link_regex,link))#上面的语句分开写,如下#但下面需要使用links.append,如果依然使用links.extend会出现错误的结果forlinkinget_links(html):ifre.match(link_regex,link):links.append(link)让我们用ipython做个实验:由上图可以看出,forinif连击推导式隐式的将link由str转变为了list,而分开写是不会帮我们转换的,所以需要使用append把整个s... 继续阅读 >
202103-02 详解Shell if else语句的具体使用方法 和其它编程语言类似,Shell也支持选择结构,并且有两种形式,分别是ifelse语句和casein语句。本节我们先介绍ifelse语句,casein语句将会在《Shellcasein》中介绍。如果你已经熟悉了C语言、Java、JavaScript等其它编程语言,那么你可能会觉得Shell中的ifelse语句有点奇怪。if语句最简单的用法就是只使用if语句,它的语法格式为:ifconditionthenstatement(s)ficondition是判断条件,如果condition成立... 继续阅读 >
202102-26 python中if嵌套命令实例讲解 一、嵌套命令计算机执行的顺序缩进相同的命令处于同一个等级,第一步,计算机就要按顺序一条一条地执行命令。1、先给score赋值;2、因为if和else是只能留一个的互斥关系,if和else下的代码块只会执行一个,所以计算机要判断赋值的内容满足【score>=60】还是【score<60】的条件——如果满足if的条件,就执行if缩进下的内容。二、if嵌套if嵌套就是指,在已经有的if条件下在内部在写一个if条件。score=26ifscore>=60:print('你已经... 继续阅读 >
202102-20 mybatis的动态sql之if test的使用说明 参数为String,iftest读取该参数代码<selectid="getMaxDepartId"parameterType="java.lang.String"resultType="java.lang.String">SELECTMAX(DEPART_ID)FROMT_P_DEPART<where><iftest="_parameter!=nulland_parameter!=''">ANDDEPART_PID=#{departId,jdbcType=VARCHAR}</if><iftest="_parameter==nullor_parameter==''">ANDDEPART_PIDISNULL</if></wh... 继续阅读 >
202102-20 在mybatis 中使用if else 进行判断的操作 我就废话不多说了,大家还是直接看代码吧~<!--查询物品的id--><selectid="checkItemsId"parameterType="pd"resultType="java.lang.Integer">SELECTi.itemsidFROMpq_goods_itemsi<where><!--方式一使用choose的方式查询--><!--<choose><whentest="parentId!=0">parentTypeId=#{parentId}</when><whentest="parentId==0">parentTypeIdisnull</when></choose>--><!--方式二使用... 继续阅读 >
202101-03 SQLite 实现if not exist 类似功能的操作 需要实现:ifnotexists(select*fromErrorConfigwhereType='RetryWaitSeconds')begininsertintoErrorConfig(Type,Value1)values('RetryWaitSeconds','3')end只能用:insertintoErrorConfig(Type,Value1)select'RetryWaitSeconds','3'wherenotexists(select*fromErrorConfigwhereType='RetryWaitSeconds')因为SQLite中不支持SP补充:sqlite3中NOTIN不好用的问题在用sqlite3熟悉SQL的时候遇到了一个百思不... 继续阅读 >
202011-19 Java如何利用状态模式(state pattern)替代if else 大多数开发人员现在还在使用ifelse的过程结构,曾看过jdon的banq大哥写的一篇文章,利用command,aop模式替代ifelse过程结构。当时还不太明白,这几天看了《重构》第一章的影片租赁案例,感触颇深。下面我来谈一谈为什么要用statepattern替代ifelse,替代ifelse有什么好处,以及给出详细代码怎么替代ifelse。本文参考jdon的“你还在使用ifelse吗?”及《重构》第一章。首先我们模仿影片租赁过程,顾客租凭影片,影片分为儿童... 继续阅读 >
202011-19 9个小技巧让你的Java if else看起来更优雅 前言ifelse是我们写代码时,使用频率最高的关键词之一,然而有时过多的ifelse会让我们感到脑壳疼,例如下面这个伪代码:是不是很奔溃?虽然他是伪代码,并且看起来也很夸张,但在现实中,当我们无数次review别人代码时,都会发现类似的场景,那么我们本文就来详细聊聊,有没有什么方法可以让我们避免来写这么多的ifelse呢?我们本文提供了9种方法来解决掉那些“烦人”的ifelse,一起来看吧。1.使用return我们使用r... 继续阅读 >
202010-10 如何优雅的替换掉Java代码中的if else 场景平时我们在写代码时,需要针对不同情况处理不同的业务逻辑,用得最多的就是if和else。但是如果情况太多,就会出现一大堆的“ifelse”,这就是为什么很多遗留系统中,一个函数可能出现上千行的代码。当然你说可以通过抽取方法或者类来实现,每一个情况交给一个方法或者对应一个类来处理,但是这样做只是看起来代码整洁了一些,还是有大量的”ifelse",后面有新的逻辑时,又要添加更多的“ifelse",没有从根本上解决问题。举... 继续阅读 >
202010-09 浅谈对python中if、elif、else的误解 今天下午在练习python时用了“if...if...else...”的分支结构,结果运行出来吓我一跳。原来我想当然的认为“if...if...else...”是“if...elif...else...”的简化结构(这个错误的看法好像还是从学C语言继承过来的)。学了这么多天才发现其中的区别啊。下面先说说python,然后再说一下C语言里面的if语句。 “python中通过if、elif、else等保留字提供单分支、二分支和多分支结构。”1.单分支结构(if语句)if<条件>:<语句块... 继续阅读 >
202009-30 JS 逻辑判断不要只知道用 if-else 和 switch条件判断(小技巧) 我们在编写JS代码时,经常会遇到逻辑判断复杂的情况。一般情况下,可以用if/else或switch来实现多个条件判断,但会出现一个问题:随着逻辑复杂度的增加,代码中的if/else和switch会越来越臃肿。本文将带你尝试写出更优雅的判断逻辑。比如说下面这样一段代码:constonButtonClick=(status)=>{if(status==1){sendLog('processing')jumpTo('IndexPage')}elseif(status==2){sendLog('fail')jumpTo('Fai... 继续阅读 >
202009-29 java如何消除太多的if else判断示例代码 1.简介if判断语句是很多编程语言的重要组成部分。但是,若我们最终编写了大量嵌套的if语句,这将使得我们的代码更加复杂和难以维护。让我们看看能否使用别的方式来做呢。设计模式是为了更好的代码重用性,可读性,可靠性,可维护性,它有六大原则:单一职责原则(SingleResponsibilityPrinciple,简称SRP):该原则是针对类来说的,即一个类应该只负责一项职责.开放--封闭原则(TheOpen-ClosedPrinciple简称OCP):是说软件实... 继续阅读 >
202009-24 python不相等的两个字符串的 if 条件判断为True详解 今天遇到一个非常基础的问题,结果搞了好久好久.....赶快写一篇博客记录一下:本来两个不一样的字符串,在if的条件判断中被判定为True,下面是错误的代码:test_str='happy'iftest_str=='good'or'happy':#这样if判断永远是True,写法错误print('aa')else:print('bbbb')这是正确的代码:test_str='happy'iftest_str=='good'ortest_str=='happy':print('aa')else:print('bbbb')补充知识:python基础(if判断条件... 继续阅读 >
202009-23 Python中if有多个条件处理方法 Python中if有多个条件怎么办python中if有多个条件,可以使用and、or、elif关键字来连接。Python编程中if语句用于控制程序的执行,基本形式为:if判断条件:执行语句……else:执行语句……if语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。当判断条件为多个值是,可以使用以下形式:if判断条件1:执行语句1……elif判断条件2:执行语句2……elif判断条件3:执行语句... 继续阅读 >