' void方法'之间的主要区别是什么?和'返回类型方法'在Java?

时间:2016-02-15 13:27:31

标签: java methods return-type

public void printString(String str) {
    System.out.println(str);
}

public String stringMethod(String str) {
    return str;
}

我用两种方法编写代码,一种是void(打印字符串消息),第二种是返回String。所以这两者几乎相同,区别在于String方法中的return语句。任何人都可以用现实生活中的例子解释这两个吗?

1 个答案:

答案 0 :(得分:1)

我会尽力解释:

public void printString(String str) {
     System.out.println(str);
}

" void"返回类型表示此方法没有返回类型。它实际上并不需要一个因为你" print"您的String到System的输出流。 在应用程序中,此方法可用于在控制台上打印特定于运行时的消息。

public String stringMethod(String str) {
    return str;
}

另一方面,这个方法返回一个String。这意味着您可以使用代码中的返回值进行进一步处理。 我想这些方法的好例子是" getters"。这些方法返回对象的字段值。

例如,取对象Person:

import java.lang.String;

public class Person {

    private String name;
    private String surename;
    private int age;


    public Person(String name, String surename, int age) {
        this.name = name;
        this.surename = surename;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String toString() {
        return "Person: " + surename + ", " + name + ". Age: " + age;
    }

    public void printPerson() {
        System.out.println(this.toString());
    }
}

在这里你可以看到printPerson()使用toString()方法的返回值来在输出流上打印结果。