请教一下,我这边的代码该如何优化一下

问题描述

请教一下,我这边的代码该如何优化一下

解决方案

首先,你的if内层分支过多,可以用switch替代,并且抽取成一个方法;其次,你的if(isContinue)可以与外层的if条件合并的。
参考优化代码如下:

 boolean isTokenOk = tokenCheck.equals(token);
if(isTokenOk&&isContinue){
    obj = orderStatusService.updateOrderStatus(orderStatus,actionId);
    printActionInfo(actionId);
}else {
    obj.setStatus(1);
    if(isContinue){
        obj.setMsg("当前状态与上级状态不匹配,无法修改");
    }else{
        obj.setMsg("校验不通过");
    }
}

抽取方法if分支方法如下:

 printActionInfo(int actionId){
    switch(actionId){
    case 20:
        //
        break;
    case 30:
        //
        break;
    case 40:
        //
        break;
    case 50:
        //
        break;
    }
}

解决方案二:

if判断太多了,用switch

解决方案三:

用map将你的ID和对应的信息做个映射,然后那一堆if else变成从map里面去信息出来打印就行了

时间: 2024-10-02 03:30:36

请教一下,我这边的代码该如何优化一下的相关文章

接苹果游戏-请教接苹果小游戏代码怎么编?(Java)

问题描述 请教接苹果小游戏代码怎么编?(Java) 我编写的是用篮子接小球,在一个面板里既可以控制篮子左右移动,又不妨碍小球随机掉落,小球可以用Timer动画隔一段时间就repaint,篮子通过按钮左右移动之后也要repaint,他们都是通过一个paintComponent画出来的,但是这样一来,小球本来在时间间隔里,但是每次一移动篮子,小球又要重画,这样造成小球移动得时快时慢,这样怎么办??? 下面是我的Java代码: public class FinalProject extends JFr

耗时计算-请教一下Matlab怎么计算代码的执行耗时

问题描述 请教一下Matlab怎么计算代码的执行耗时 Matlab怎么计算代码的执行耗时,要求支持code generation 不要说coder.extrinsic 'tic','toc',这个不支持code generation 解决方案 Profile(分析) 在加速你的matlab程序之前,你需要知道你的代码哪一部分运行最慢.matlab提供个简单的机制,让你能够知道你 的代码的某一部分运行所占用CPU时间.通过在代码段开始添加tic,及在结束添加toc:matlab就能计算出这一代 码

c语言-请教 几行c小代码 这什么问题

问题描述 请教 几行c小代码 这什么问题 解决方案 sanf_s("%s",name,40); 解决方案二: 解决方案三: 可以啊 ,我试了,用vc6 解决方案四: 这个呢 解决方案五: 不用scanf_s,直接scanf.. #include int main(void) { char name[40]; scanf("%s",name); printf("%s",name); return 0; }

提升网页信噪比之代码和内容优化去噪

网页信噪比指的是网页中的文本内容部分与生成这些文本而产生的html标签内容的比率,一般来说网页信噪比越高,我们的这个网页的质量可能就越好,可以基于搜索引擎对于网页的抓取原则来解释:搜索引擎蜘蛛在抓取网页的时候,会对网页去重,主要是为了去掉网页的噪声,留下有用的信息.网页去重后,搜索引擎主要抓取存储的数据是除去html标签后的文本内容,这部分内容可以认为是不失真声音信号,而同时产生的那部分html标签内容,可以被认为是噪声.   网页信噪比对于SEO的影响 有心的朋友可能就会从北京SEO上面的一段

java-优化-代码中的优化(1)

1.尽量使用final修饰符. 带有final修饰符的类是不可派生的.在JAVA核心API中,有许多应用final的例子,例如java.lang.String.为String类指定final防止了使用者覆盖length()方法.另外,如果一个类是final的,则该类所有方法都是final的.java编译器会寻找机会内联(inline)所有的final方法(这和具体的编译器实现有关).此举能够使性能平均提高50%. 2.尽量重用对象. 特别是String对象的使用中,出现字符串连接情况时应使用St

无法watch-当前方法的代码已经过优化 无法计算表达式的值

问题描述 当前方法的代码已经过优化 无法计算表达式的值 网上找的解决方案是在项目属性里不要勾选 代码优化 可是我的项目一直都没有勾选过 解决方案 你从哪看出来我使用了response.end 和 HttpContext.Current.ApplicationInstance.CompleteRequest 结束 ???? 解决方案二: 这种情况一般是使用了response.end,并将代码放在try catch里,解决办法就是将response.end去掉或正如楼主用HttpContext.Cu

Android] Android开发优化之——从代码角度进行优化

通常我们写程序,都是在项目计划的压力下完成的,此时完成的代码可以完成具体业务逻辑,但是性能不一定是最优化的.一般来说,优秀的程序员在写完代码之后都会不断的对代码进行重构.重构的好处有很多,其中一点,就是对代码进行优化,提高软件的性能.下面我们就从几个方面来了解Android开发过程中的代码优化.   1)静态变量引起内存泄露 在代码优化的过程中,我们需要对代码中的静态变量特别留意.静态变量是类相关的变量,它的生命周期是从这个类被声明,到这个类彻底被垃圾回收器回收才会被销毁.所以,一般情况下,静态

静态代码扫描可优化的代码,把代码当字串,用正则或字符串技术匹配模式,怎么识别出这种可优化的代码?有空的一起研究下,额外奖分。

问题描述 List<string>A=newList<string>();List<string>B=newList<string>();foreach(stringainA){foreach(stringbinB){if(a==b){//类似这种取交集的,都可以用哈希或IENumerable.Intersect()优化,但不容易扫准}}}for(inti=0;i<A.Count;i++){for(intj=0;j<B.Count;j++){if

JavaScript实现跑马灯抽奖活动实例代码解析与优化(一)_javascript技巧

 最近做了个项目,其中有项目需求是要实现跑马灯抽奖效果,实现此功能主要用到js相关知识,废话不多说,感兴趣的朋友可以阅读下全文. 开始之前先来看上篇文章遗漏的两个问题和几个知识点,是自己重构的过程中需要用到的: 1.移动端1px像素线的问题 对于设计师给我的手机端网页的设计稿都是2倍图.按照道理来说,在写网页的时候,所有对象的实际尺寸都是会除2.但是对于1像素的线呢? 先来看两张图,设计稿的效果:   在三星 S4下的实际显示效果:   可以看到这个时候1px的线竟然显示不出来了.这个问题是跟