标签: simplify

使用大量ifs简化代码

我有一个基于枚举的方法,并且在开始时我们有这种情况:

public void MyMetohd(Somestatus status)
{
if(status == Somestatus.Enum1)
{
DoA();
DoB();
DoC();
DoD();
DoE();
}
if(status == Somestatus.Enum2)
{
DoA();
DoB();
DoC();
DoD();
}

if(status == Somestatus.Enum3)
{
DoA();
DoB();
DoC();
}

if(status == Somestatus.Enum4)
{
DoA();
DoB();
}

if(status == Somestatus.Enum5)
{
DoA();
}
}
Run Code Online (Sandbox Code Playgroud)

你会如何优化这种代码(它不是我的代码)?

c# optimization simplify

0
推荐指数
2
解决办法
728
查看次数

jQuery多个基于变量值的if语句简化了吗?

我已经建立了一个不断变化的旗帜一些杂志的问题,这一切正是工作,我想,但我不知道是否有比所有的,如果我使用检查"issueTotal"语句,这似乎是回到做法,但一个更好的选择它是目前唯一可以让它发挥作用的方式.

任何回复都将非常感谢,提前感谢.

jQuery的

 var issueTotal = 0;



$(document).ready(function(){

$('#backIssue0').show();

$('.prevButton').hide();    

$('.nextButton').click(function(e) {
    e.preventDefault();

    issueTotal = issueTotal + 1;

    if(issueTotal > 0){
        $('.prevButton').show();
    }
    if(issueTotal < 4){
        $('.nextButton').show();
    }    
    if(issueTotal > 3){
        $('.nextButton').hide();
    }

    if(issueTotal == 0){
        $('#backIssue0').show();
    }
    if(issueTotal == 1){
        $('#backIssue0').hide();
        $('#backIssue1').show();
    }
    if(issueTotal == 2){
        $('#backIssue1').hide();
        $('#backIssue2').show();
    }
    if(issueTotal == 3){
        $('#backIssue2').hide();
        $('#backIssue3').show();
    }
    if(issueTotal == 4){
        $('#backIssue3').hide();
        $('#backIssue4').show();
    }

});


$('.prevButton').click(function(e) {
    e.preventDefault();

    issueTotal = issueTotal - 1;

    if(issueTotal > 1){
        $('.prevButton').show();
    }
    if(issueTotal < 1){
        $('.prevButton').hide(); …
Run Code Online (Sandbox Code Playgroud)

jquery banner simplify

0
推荐指数
1
解决办法
660
查看次数

你能简化这个 if 语句吗?

我希望以某种方式简化以下内容:monthNbr==11||monthNbr==4||monthNbr==6||monthNbr==9这里:

public int daysPerMonth (int monthNbr){
    if(monthNbr==11||monthNbr==4||monthNbr==6||monthNbr==9){
        return 30;
    } else if (monthNbr==2) {
        return 28;
    } else {
        return 31;
    }
}
Run Code Online (Sandbox Code Playgroud)

java simplify

-1
推荐指数
1
解决办法
76
查看次数

如何将if-else语句替换为更短的内容?

我认为以下代码说明了一切.

if (card==1) {
    cardImageString = @"myGrabbedImage1.png";
} else if (card==2) {
    cardImageString = @"myGrabbedImage2.png";
} else if (card==3) {
    cardImageString = @"myGrabbedImage3.png";
} else if (card==4) {
    cardImageString = @"myGrabbedImage4.png";
} else if (card==5) {
    cardImageString = @"myGrabbedImage5.png";
} else if (card==6) {
    cardImageString = @"myGrabbedImage6.png";
} else if (card==7) {
    cardImageString = @"myGrabbedImage7.png";
} else if (card==8) {
    cardImageString = @"myGrabbedImage8.png";
}
Run Code Online (Sandbox Code Playgroud)

实际的if-else比这大10倍.

卡= int.

CardImageString = NSString.

'card'仅在此声明中使用,可以在您的答案中删除.

我怎样才能简化这一切??? 谢谢!!

if-statement objective-c simplify nsstring nsarray

-2
推荐指数
1
解决办法
72
查看次数

如何简化 C++ 构造函数,将参数复制到其字段?

这就是我所拥有的:

class Vector3 {
    private:
        float x;
        float y;
        float z;
    public:
        Vector3(float x = 0, float y = 0, float z = 0) {
            this->x = x;
            this->y = y;
            this->z = z;
        }
        ...
};
Run Code Online (Sandbox Code Playgroud)

我觉得this->something = something很重复。我只想用参数构造一次 Vector3 并

然后不再访问这些字段,只需使用方法添加 Vector3。

有什么方法可以简化构造函数而不需要这样做吗this->something = something?或者有什么方法可以“密封”这些字段?

c++ constructor simplify

-2
推荐指数
1
解决办法
121
查看次数