相关疑难解决方法(0)

太多'if'陈述?

以下代码确实可以满足我的需求,但它很难看,过多或者其他很多东西.我已经看过公式并尝试编写一些解决方案,但我最终得到了类似数量的陈述.

在这种情况下是否有一种数学公式可以使我受益,或者如果语句可以接受,那么它是16吗?

为了解释代码,这是一种基于同步回合的游戏.两个玩家每个都有四个动作按钮,结果来自一个数组(0-3),但变量'一'和'两个'可以是如果有帮助就分配任何东西 结果是,0 =既没有胜利,1 = p1胜利,2 = p2胜利,3 =双赢.

public int fightMath(int one, int two) {

    if(one == 0 && two == 0) { result = 0; }
    else if(one == 0 && two == 1) { result = 0; }
    else if(one == 0 && two == 2) { result = 1; }
    else if(one == 0 && two == 3) { result = 2; }
    else if(one == 1 && two == 0) { result = 0; …
Run Code Online (Sandbox Code Playgroud)

math if-statement formula

260
推荐指数
15
解决办法
3万
查看次数

对一个switch case语句使用两个值

在我的代码中,程序根据用户输入的文本执行某些操作.我的代码看起来像:

switch (name) {
        case text1: {
            //blah
            break;
        }
        case text2: {
            //blah
            break;
        }
        case text3: {
            //blah
            break;
        }
        case text4: {
            //blah
            break;
        }
Run Code Online (Sandbox Code Playgroud)

然而,案件里面的代码text1text4是一样的.因此,我想知道是否有可能实现类似的东西

case text1||text4: {
            //blah
            break;
        }
Run Code Online (Sandbox Code Playgroud)

我知道||运算符不会在case语句中工作,但是我可以使用类似的东西.

java switch-statement

259
推荐指数
10
解决办法
32万
查看次数

如何处理多个条件的情况?

在我使用任何编程语言的1个月经验中,我假设switch case条件会接受括号中的任何内容作为布尔检查thingamajig,即:

|| && < >
Run Code Online (Sandbox Code Playgroud)

明白我的意思了吗?

就像是

char someChar = 'w';
switch (someChar) {
case ('W' ||'w'):
    System.out.println ("W or w");
}
Run Code Online (Sandbox Code Playgroud)

可悲的是,似乎没有这样的方式.我不能在switch case中进行布尔检查.

有办法解决吗?

顺便说一句,如果我听起来很混乱,非常抱歉.我还不太清楚这种语言的所有名称:X
任何答案都赞赏

java boolean case switch-statement

23
推荐指数
2
解决办法
5万
查看次数

在 IntelliJ 中的 Java 早期访问版本中启用“预览”功能

不幸的是,即使是 IntelliJ 的最新早期访问版本通常也不支持 Java 的早期访问版本。

\n

例如,我尝试将Intellij 2022.1.1 Preview (Ultimate Edition)与基于早期访问Java 19Project Loom实验版本一起使用。安装 JDK 通常适用于 IntelliJ。

\n

但现在我想使用 Loom 特定的功能。当我调用这个实验性 Java 19 中的新方法时,我从编译器中收到以下错误:

\n
\n

java: newVirtualThreadPerTaskExecutor() 是预览 API,默认情况下处于禁用状态。

\n

(使用 --enable-preview 启用预览 API)

\n
\n

我的第一个想法是在文件 > 项目结构 > 项目设置 > 项目\xe2\x80\xa6 模块面板上设置语言级别字段。但显然 IntelliJ 没有为这个早期访问 Java 19 的(预览)模式提供任何菜单项。

\n

有没有办法让 IntelliJ 使用新的预览 API?

\n

我知道错误消息的建议--enable-preview是在某处应用的标志。但我不知道在哪里。

\n

java intellij-idea preview-feature

16
推荐指数
3
解决办法
1万
查看次数

使用 20 多个案例缩短 Switch 语句

首先,我想为这个奇怪的问题道歉,我对 Java 很陌生。

所以,假设我在这里有一段这样的代码:

    switch(test) {

        case 50:
        case 51:
        case 52:
        case 53:
        case 54:
        case 55:
        case 56:
        case 57:
        case 58:
        case 59:
        case 60:
        case 61:
        case 62:
        case 63:
        case 64:
        case 65:
        case 66:
        case 67:
        case 68:
        case 69:
        case 70:
        case 71:
        case 72:
        case 73:
        case 74:
        case 75:
        case 76:
        case 77:
        case 78:
        case 79:
        case 80:
            System.out.println("random");


        }
        break;
Run Code Online (Sandbox Code Playgroud)

举个例子。

有很多情况,我想知道是否有办法缩短它。我尝试使用 for 循环遍历这些数据,但我无法完全理解它。任何帮助表示赞赏。

再次,请原谅菜鸟的问题!我对Java很陌生!

提前致谢。

java

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

如何在开关盒中写几个条件以具有相同的行为?

switch (x)
{
case A:
case B:
case C:
.doSomething()
}
有没有办法让我在一行中有3个案例?比如这样的事情
case A, B, C:

java case switch-statement

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

充分利用switch语句

我的Java教科书问我有关以下错误的信息:

switch (score)
        {
            case (score > 90):
                grade = 'A';
                break;
            case (score > 80):
                grade = 'B';
                break;
            default:
                grade = 'C';
        }
Run Code Online (Sandbox Code Playgroud)

我已经知道错误在哪里:

  • Switch语句不是为比较而构建的(score > 90); 那是if/else语句.

但是,这让我疑惑:怎么可能一个switch语句有效地占到整数的范围是多少?

我能想到的最明显的例子如下,但我发现它相当蛮力:

switch (score)
    {
        case 90: case 91: case 92: case 94: case 95:
        case 96: case 97: case 98: case 99: case 100:
            grade = 'A';
            break;
        case 80: case 81: case 82: case 84: case 85:
        case 86: case 87: case 88: case …
Run Code Online (Sandbox Code Playgroud)

java switch-statement

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