java - 打印出对象数组

标签 java object pseudocode

我有一个简单的问题

我有飞行、水上运动类(class),扩展了动物类(class)

如果我只想打印动物对象数组中的飞行对象

做这样的事情是否安全

IF choice is Flying
FOR i=0 TO num CHANGEBY 1 DO
    IF Animal[i] INSTANCEOF Flying THEN
        str = Flying.toString

    END IF
END FOR
OUTPUT str

或者

FOR i=0 TO num CHANGEBY 1 DO
    IF Animal[i] INSTANCEOF Flying THEN
        str = Animal.toString

执行此操作并重写 toString 方法

我是java新手,所以我什至不确定这两个是否正确。所以欢迎任何形式的帮助

感谢您的帮助

编辑-

public static void display(ExampleA[] example)
{ 
    for(int pos = 0; pos < example.length; pos++) 
    {   
        if(example instanceof A)
        {

            output = A.toString()            
        }


    }

    System.out.println(output);

}

抱歉,这个问题含糊不清,这是我的问题的一个例子

我可以做output = A.toString()来获取对象字符串还是我必须做

 output = example.toString()  

并重写toString方法,打印出A类和Example类中的toString

最佳答案

嗨,您的第二种方法是正确的,这里是 java 代码,您需要在 Parent(Animal) 类或 Child(Flying) 类中实现 toString。

public class Application {

    public static void main(String[] args) {
        Animal arr[] = new Animal[]{new Flying(), new Aquatic(), new Aquatic()};
        for (Animal a : arr) {
            if (a instanceof Flying) {
                System.out.println(a);
            }
        }
    }
}

class Animal {
}

class Flying extends Animal {
    @Override
    public String toString() {
        return "Flying::toString";
    }
}


class Aquatic extends Animal {
}

关于java - 打印出对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44230528/

相关文章:

c++ - 当一个类的对象成员需要访问彼此的数据时怎么办?

java - 解决 javax.net.ssl.SSLHandshakeException : sun. security.validator.ValidatorException : PKIX path building failed Error?

java - 如何将 "count"MySQL 查询显示到 JTextField 中?

javascript - 检测 <object> 元素的宽度/高度何时更改

scala - 使用 Java 的包对象中定义的 Scala 类

algorithm - 用特定条件填充矩阵

java - 计算循环运行的次数(大 O)

algorithm - 返回特定圆中k个元素的组合的算法

java - 分词和模式匹配在中文中是如何工作的?

java - parseJSON 将在有效 JSON 上抛出错误