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

arrayList.add()是布尔值吗?[关闭]

宣瀚
2023-03-14
Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
        Type mismatch: cannot convert from boolean to String
        Type mismatch: cannot convert from boolean to String

        at Animal.talk(Animal.java:7)
        at Main.main(Animal.java:19)
import java.util.ArrayList;

public class Animal {
    public void talk(String animal) {
        ArrayList<String> sound = new ArrayList<String>();
        if(animal.equals("dog")) {
            String dog = sound.add("barf barf");
            System.out.println(dog);
        } else if(animal.equals("cat")) {
            String cat = sound.add("meow meow");
            System.out.println(cat);
        }
    }
}

class Main {
    public static void main(String[] args) {
        Animal cat = new Animal();
        cat.talk("cat");
    }
}

我不太了解ArrayList,我想知道,ArrayList.add()是一个布尔值吗?

共有1个答案

傅恺
2023-03-14

.add()方法返回一个布尔值。

您可以像下面这样创建字符串狗

String dog="barf barf"; 

然后使用add()方法将其添加到arraylist中,如果只需要在arraylist包含“barf barf”的情况下打印,则添加一个if条件并将print语句放在括号中,如

if(sound.contains(dog){
    System.out.println(dog);
}
 类似资料:
  • 检查给定的参数是否是一个原生的布尔值。 使用 typeof 来检查一个值是否为一个布尔值。 const isBoolean = val => typeof val === 'boolean'; isBoolean(null); // false isBoolean(false); // true

  • 问题内容: 我在一本书中找到了这段代码,并在Netbeans中执行了它: 我只是不明白为什么这段代码的输出是真实的,任何人都可以启发我,谢谢。 问题答案: 它缺少双等号。因此,它是在做赋值而不是相等比较(请记住,赋值的返回值是新值)。在大多数情况下,大多数类型都不是布尔值,这意味着结果不是布尔值,因此对一条语句而言它是非法的,从而导致编译器错误。但是,由于此处的类型已经是布尔值,因此赋值会导致布尔

  • 到目前为止我们看到的类型都能表示很大范围的数据,整数多的是,而浮点数更多。相对而言,字符集的规模小的多。C++中还有一个类型表示的范围更小,即布尔类型,它只能表示true和false两个值。 虽然没提到过该类型,但我们前面几章中实际已经使用过布尔值了。if语句和while语句中的条件就是布尔表达式。比较操作符的结果也是布尔值。例如: if (x == 5) { // 进行某些处理 } ==操

  • 原文: http://exploringjs.com/impatient-js/ch_booleans.html 基本类型 _ 布尔 _ 包含两个值 - false和true: > typeof false 'boolean' > typeof true 'boolean' 14.1。转换为布尔值 这三种方法可以将任意值x转换为布尔值。 Boolean(x) 最具描述性;推荐的。 x ?

  • 问题内容: 为什么在编写时默认分配给变量而不是变量? 我之所以问是因为,我遇到了一些代码,其中有一个关于布尔变量的求值,即是否确定是否执行方法。 问题答案: 布尔(带有大写的“ B”)是一个布尔对象,如果未分配值,则默认为null。布尔值(带有小写的“ b”)是布尔值基元,如果未分配值,则默认为false。

  • 我公开了一个使用另一个SOAP服务的服务。我得到了JAXB生成的服务模型。当我使用服务时,数据被设置到与此模型相关的对象中。我定义了自己的域模型,它与JAXB模型具有完全相同的类集,但没有xml注释等。我使用dozer来执行数据映射。当标记为注释(nillable=true)的某些布尔元素为null时,我的域模型中的目标对象布尔对象将设置为默认的true或false值。我希望它保留相同的空值。布尔