Switch case for two INT variables

前端 未结 6 1389
生来不讨喜
生来不讨喜 2021-01-12 19:07

Consider the following code :

if (xPoint > 0 && yPoint > 0) {
    m_navigations = Directions.SouthEast;
}
else if (xPoint > 0 && yP         


        
6条回答
  •  旧巷少年郎
    2021-01-12 19:25

    At the moment :

        String direction = Integer.signum(xPoint) + "|" + Integer.signum(yPoint);
        switch(direction)
        {
            case "1|1":
                {m_navigations = Directions.SouthEast; break;}
            case "1|-1":
                {m_navigations = Directions.NorthEast; break;}
            case "-1|1":
                {m_navigations = Directions.SouthWest; break;}
            case "-1|-1":
                {m_navigations = Directions.NorthWest; break;}
            case "0|-1":
                {m_navigations = Directions.North; break;}
            case "0|1":
                {m_navigations = Directions.South; break;}
            case "1|0":
                {m_navigations = Directions.East; break;}
            case "-1|0":
                {m_navigations = Directions.West; break;}
            default: break;         
        }
    

    Now I'll try what @danieln has suggested .

提交回复
热议问题