滚雪球学Java(35):揭秘Java方法的返回值,从void到诸多数据类型

简介: 【5月更文挑战第10天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!

🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!


前言

  在Java中,方法是指一段具有特定功能的可重复使用的代码块。在定义方法时,我们需要定义方法名、参数列表、返回值类型及方法体。其中,返回值类型表示方法返回值的类型,可以是Java基本数据类型,也可以是引用类型,甚至可以是void。本篇文章将从Java方法返回值的基础类型讲起,逐渐深入探讨Java方法返回值的详细内容。

正文

1. void类型

  void类型是Java中的一种基础数据类型,表示“无返回值”。在定义方法时,如果希望该方法不返回任何值,则可将返回值类型设为void。

下面是一个简单的示例:

public class Demo {
   
   
    public static void main(String[] args) {
   
   
        printHello();
    }

    public static void printHello() {
   
   
        System.out.println("Hello");
    }
}

  在这个示例中,我们定义了一个名为printHello的方法,该方法没有任何参数,返回值类型为void。在main方法中调用printHello方法,程序会输出“Hello”字符串。

2. 基本数据类型

  除了void类型之外,Java还支持一系列基本数据类型作为方法返回值类型。这些基本数据类型分别是int、short、long、float、double、byte、boolean、char。下面是这些基本数据类型的示例:

public class Demo {
   
   
    public static void main(String[] args) {
   
   
        int result = add(1, 2);
        System.out.println(result); // 3

        double area = circleArea(3);
        System.out.println(area); // 28.274333882308138
    }

    public static int add(int num1, int num2) {
   
   
        return num1 + num2;
    }

    public static double circleArea(double radius) {
   
   
        return Math.PI * radius * radius;
    }
}

  在这个示例中,我们定义了两个方法:add和circleArea。add方法接收两个int类型的参数,返回它们的和;circleArea方法接收一个double类型的参数,返回半径为该参数的圆的面积。在main方法中调用这两个方法,分别将返回值赋值给result和area变量,并输出它们的值。

3. 引用类型

  除了基本数据类型之外,Java还支持使用引用类型作为方法返回值类型。在Java中,引用类型包括类、接口、数组等。下面是一个使用类作为返回值类型的示例:

public class Demo {
   
   
    public static void main(String[] args) {
   
   
        Person p = createPerson("Tom", 20);
        System.out.println(p.getName()); // Tom
        System.out.println(p.getAge()); // 20
    }

    public static Person createPerson(String name, int age) {
   
   
        Person p = new Person(name, age);
        return p;
    }
}

class Person {
   
   
    private String name;
    private int age;

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

    public String getName() {
   
   
        return name;
    }

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

    public int getAge() {
   
   
        return age;
    }

    public void setAge(int age) {
   
   
        this.age = age;
    }
}

  在这个示例中,我们定义了一个名为Person的类,并在createPerson方法中返回一个Person对象。在main方法中调用createPerson方法,并使用返回的Person对象输出其name和age属性的值。

4. 返回值的多态

  Java中的继承与多态概念可以拓展到方法的返回值类型。具体来说,如果一个方法的返回值类型是父类或接口类型,那么该方法可以返回其子类或实现类的对象。

下面是一个使用多态作为返回值类型的示例:

public class Demo {
   
   
    public static void main(String[] args) {
   
   
        Animal a1 = getAnimal("dog");
        Animal a2 = getAnimal("cat");

        System.out.println(a1.getName()); // dog
        System.out.println(a2.getName()); // cat
    }

    public static Animal getAnimal(String type) {
   
   
        if (type.equals("dog")) {
   
   
            return new Dog("dog");
        } else {
   
   
            return new Cat("cat");
        }
    }
}

interface Animal {
   
   
    String getName();
}

class Dog implements Animal {
   
   
    private String name;

    public Dog(String name) {
   
   
        this.name = name;
    }

    public String getName() {
   
   
        return name;
    }
}

class Cat implements Animal {
   
   
    private String name;

    public Cat(String name) {
   
   
        this.name = name;
    }

    public String getName() {
   
   
        return name;
    }
}

  在这个示例中,我们定义了一个Animal接口以及两个实现该接口的子类:Dog和Cat。在getAnimal方法中根据参数type的值返回对应的Animal子类对象,在main方法中调用getAnimal方法,分别将返回值赋值给a1和a2变量,并输出它们的name属性的值。

附录源码

  如上涉及所有源码均已上传同步在 Gitee,提供给同学们一对一参考学习,辅助你更迅速的掌握。

小结

  本篇文章详细介绍了Java方法的返回值类型,包括基本数据类型、引用类型以及多态的应用。在实际开发中,我们需要根据具体需求选择合适的返回值类型,并保证方法的返回值类型与方法实现的功能一致。

☀️建议/推荐你


  无论你是计算机专业的学生,还是对编程有兴趣的小伙伴,都建议直接毫无顾忌的学习此专栏「滚雪球学Java」,bug菌郑重承诺,凡是学习此专栏的同学,均能获取到所需的知识和技能,全网最快速入门Java编程,就像滚雪球一样,越滚越大,指数级提升。

目录
相关文章
|
6月前
|
Java
Java语言实现字母大小写转换的方法
Java提供了多种灵活的方法来处理字符串中的字母大小写转换。根据具体需求,可以选择适合的方法来实现。在大多数情况下,使用 String类或 Character类的方法已经足够。但是,在需要更复杂的逻辑或处理非常规字符集时,可以通过字符流或手动遍历字符串来实现更精细的控制。
442 18
|
6月前
|
Java 编译器 Go
【Java】(5)方法的概念、方法的调用、方法重载、构造方法的创建
Java方法是语句的集合,它们在一起执行一个功能。方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用方法的优点使程序变得更简短而清晰。有利于程序维护。可以提高程序开发的效率。提高了代码的重用性。方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头写,不使用连接符。例如:addPerson。这种就属于驼峰写法下划线可能出现在 JUnit 测试方法名称中用以分隔名称的逻辑组件。
308 4
|
7月前
|
算法 安全 Java
除了类,Java中的接口和方法也可以使用泛型吗?
除了类,Java中的接口和方法也可以使用泛型吗?
239 11
|
6月前
|
存储 Java Go
【Java】(3)8种基本数据类型的分析、数据类型转换规则、转义字符的列举
牢记类型转换规则在脑海中将编译和运行两个阶段分开,这是两个不同的阶段,不要弄混!
334 2
|
6月前
|
编解码 Java 开发者
Java String类的关键方法总结
以上总结了Java `String` 类最常见和重要功能性方法。每种操作都对应着日常编程任务,并且理解每种操作如何影响及处理 `Strings` 对于任何使用 Java 的开发者来说都至关重要。
414 5
|
6月前
|
Java Go 开发工具
【Java】(2)Java数据类型阐述、基本数据类型的占用和范围、二进制的讲述
数据的一种表示形式。十进制表示满十进一原则。二进制表示满二进一原则。例如:十进制例如:二进制计算机在任何情况下都只能识别二进制。
328 1
|
7月前
|
安全 Java
使用Java多态性进行数据类型转换
以上示范了如何通过多态性来执行安全有效地对于Java对象间相互之间进行正确方式与场合下正确格式与条件限定内对于各个层级关系内部成员及其功能调取与应有操作处理过程,并通过 `instanceof`关键字确保了程序运行期间遵循逻辑合理并符合预设规则条件限定内正常工作流程而无需担忧潜藏风险问题出现可能带来影响结果质量问题情况存在可能。
230 12
|
7月前
|
Java 开发者
Java 函数式编程全解析:静态方法引用、实例方法引用、特定类型方法引用与构造器引用实战教程
本文介绍Java 8函数式编程中的四种方法引用:静态、实例、特定类型及构造器引用,通过简洁示例演示其用法,帮助开发者提升代码可读性与简洁性。
|
存储 Java
# 【Java全栈学习笔记-U1-day02】变量+数据类型+运算符
本篇笔记主要围绕Java全栈学习的第二天内容展开,涵盖了变量、数据类型、运算符以及Scanner类的应用。首先介绍了变量的概念与命名规范,以及如何定义和使用变量;接着详细讲解了Java中的基本数据类型,包括整型、浮点型、字符型、布尔型等,并通过实例演示了数据类型的运用。随后,深入探讨了各类运算符(赋值、算术、关系、逻辑)及其优先级,帮助理解表达式的构成。最后,介绍了如何利用Scanner类实现用户输入功能,并通过多个综合示例(如计算圆面积、购物打折、变量交换及银行利息计算)巩固所学知识。完成相关作业将进一步加深对这些基础概念的理解与实践能力。
256 13
|
Java
JAVA易错点详解(数据类型转换、字符串与运算符)
JAVA易错点详解(数据类型转换、字符串与运算符)
208 4