当前位置: 首页 > 知识库问答 >
问题:

参数类型布尔值int的运算符

钮瀚
2023-03-14

我是新来的处理,我有这个问题。我一直收到下面代码中粗体部分的错误消息。我的语法错了吗?

void block(int x, int y, int s, color tinto) {
    fill(tinto);
    for (int i = 0; i < 3; i++) {
        triple(x, y+i*s, s, tinto);
    }
    if (0 < i < 3 && 6 < i < 9) {  // HERE
        tinto = 255;
    }
    else {
        tinto = tinto - 200;
    }
}

共有3个答案

朱建弼
2023-03-14

这不是有效的java表达式。尝试:

if (0<i && i<3 && 6<i && i<9){
宰父远
2023-03-14

语法是无效的,我认为你的表达式是错误的。你说i必须在一个范围内,也必须在另一个范围内。我想你的意思是说,它可能介于两者之间。

有效语法示例:而不是0

试试这个:

if ( (i > 0 && i < 3) || (i > 6 && i < 9) )

请注意,以下内容(这显然是您试图做的)将永远不会被计算为true,因为它不能同时在这两个范围内。

if ( (i > 0 && i < 3) && (i > 6 && i < 9) ) // incorrect

滕弘新
2023-03-14

在Java,要检查一个变量是否在一个范围内,你必须将语句分成两部分,如下所示:

if (0 < i && i < 3 && 6 < i && i < 9){

}

然而,这个特定的代码永远不会是真的,因为你要求它在两个不同的范围内。也许你是想检查两个范围?

if (0 < i && i < 3 || 6 < i && i < 9){

}

注意| |或运算符,而不是

 类似资料:
  • 我这里有这个代码: 但我得到了错误信息: 接线员 为什么呢?如何修复代码? 以下是代码的文本形式:

  • 我的Java代码没有什么问题。我正在使用下面的代码,但Eclipse总是提示相同的消息“参数类型Test1,int的运算符未定义”。但是如果我将代码更改为“System.out.println(test1”“100);”或“System.out.println”(“100 test1”)或“System.out.println(100”“test1);”,没有问题。 有人对此有想法吗?请帮忙。多谢

  • 在我的代码中,我一直得到这样的错误:操作符!=对于参数类型boolean和int是未定义的,我不知道该怎么做来修复它。该错误出现在eclipse内部以及启动时 如有帮助,我们将不胜感激:)谢谢!

  • 好的,这是我的第一篇帖子。首先,我一直试图自己解决这个问题,但已经过了几个小时了,我还是迷路了。我试着在网上搜索,但没有找到足够具体的答案。以下是本项目的要求: 这是我到目前为止所拥有的: 现在,我试着改变各种事情。比如使用firstLastCheck(nameofArrayVariable)。通常它需要一个标识符,但如果我让它工作,它就不能将数组int作为布尔值返回。我还感到困惑的是,没有指令首

  • 前言 上个礼拜介绍了Shell编程范例之数值运算,对 Shell 下基本数值运算方法做了简单的介绍,这周将一起探讨布尔运算,即如何操作“真假值”。 在 Bash 里有这样的常量(实际上是两个内置命令,在这里我们姑且这么认为,后面将介绍),即 true 和 false,一个表示真,一个表示假。对它们可以进行与、或、非运算等常规的逻辑运算,在这一节,我们除了讨论这些基本逻辑运算外,还将讨论Shell编

  • 概述 布尔运算符用于将表达式转为布尔值,一共包含四个运算符。 取反运算符:! 且运算符:&& 或运算符:|| 三元运算符:?: 取反运算符(!) 取反运算符是一个感叹号,用于将布尔值变为相反值,即true变成false,false变成true。 !true // false !false // true 对于非布尔值,取反运算符会将其转为布尔值。可以这样记忆,以下六个值取反后为true,其他值都