【BigData】Java基础_方法的定义与使用
1.概念
Java语言中的“方法”(Method)在其他语言当中也可能被称为“函数”(Function)。对于一些复杂的代码逻辑,如果希望重复使用这些代码,并且做到“随时任意使用”,那么就可以将这些代码放在一个大括号“{}”当中,并且起一个名字。使用代码的时候,直接找到名字调用即可
2.实战演练
2.1 测试传入参数与返回值方法
目录结构
代码
package cn.test.logan.day04; import java.util.ArrayList; public class MethodDemo {
public int num1;
public int num2; // 方法:用来封装一段逻辑
// 定义方法的语法:public 返回值类型 方法名() { //逻辑 }
public int getSum() {
int sum = num1 + num2;
return sum;
} // 没有返回值的方法,使用void表示
public void say() {
System.out.println("此时是没有返回值的方法,哈哈");
} // 带参数但没有返回值的方法 ,同名方法,但是参数列表不一样,叫方法的重载
public void say(String param) {
System.out.println("我的输入参数是:"+param);
} // 带多个参数并且没有返回值的方法
public void say(String param1,String param2) {
System.out.println("输入的第一个参数是:"+param1);
System.out.println("输入的第二一个参数是:"+param2);
} // 带参数并且有返回值的方法
public int getDiff(int a,int b) {
int diff = a - b;
return diff;
} // 用来对ArrayList排序
public static void sortForArrayList(ArrayList<Integer> list) {
for(int i=0;i<list.size()-1;i++) {
for(int j=0;j<list.size()-1-i;j++) {
if(list.get(j) > list.get(j+1)) {
int tmp = list.get(j);
list.set(j, list.get(j+1));
list.set(j+1, tmp);
}
}
}
}
// 打印ArrayList
public void print(ArrayList<Integer> list) {
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
}
}
MethodDemo.java
package cn.test.logan.day04; import java.util.ArrayList; public class MethodTest {
public static void main(String[] args) {
MethodDemo md = new MethodDemo();
md.num1 = 12;
md.num2 = 13; int sum = md.getSum();
System.out.println("两个数字的和为:"+sum); System.out.println("----------------------------");
// 调用没有返回值的方法
md.say();
System.out.println("----------------------------");
// 调用带参数, 没有返回值的方法
md.say("参数1");
System.out.println("----------------------------");
// 调用带多个参数, 没有返回值的方法
md.say("参数A","参数B");
System.out.println("----------------------------");
// 调用带参数,有返回值的方法
int diff = md.getDiff(20, 10);
System.out.println(diff);
System.out.println("----------------------------"); // 定义一个ArrayList,并按从小到达顺序排序后打印
ArrayList<Integer> al = new ArrayList<>();
al.add(20);
al.add(10);
al.add(40);
al.add(15); md.sortForArrayList(al);
md.print(al);
} }
MethodTest.java
2.2 测试成员方法和静态方法
成员方法,又称为对象的方法,和对象存在关系,需要使用对象调用。
静态方法,又称为类的方法,和对象不存在关系,可以直接使用类调用。
代码
public class MethodDemo2 {
public String name; // 定义一个类的方法(静态方法)
/**
* 这样的方法,跟具体对象没关系
* 这样的方法,就可以了定义为类方法-->类的方法
* 静态方法可以直接使用类调用
*/
public static void print() {
System.out.println("hello");
} // 定义一个(对象的方法)成员方法
public void showName() {
System.out.println("hello,"+this.name);
}
}
MethodDemo2.java
package cn.test.logan.day04; public class MethodTest2 {
public static void main(String[] args) {
// 静态方法调用
MethodDemo2.print();
// 成员方法调用
System.out.println("---------------------------");
MethodDemo2 m2 = new MethodDemo2();
m2.name="Jack";
m2.showName();
}
}
MethodTest2.java
【BigData】Java基础_方法的定义与使用的更多相关文章
- 关于java基础_方法的简单习题
package day05; import java.util.Arrays; /** * 方法作业 * @author ASUS * */ public class Demo6 { /* * 1.定 ...
- 关于java基础_方法的学习
方法: 方法就是把一堆需要反复执行的代码封装起来,如果项目需要调用这段代码时,直接调用方法名即可 方法相当于榨汁机, 材料:水果 产出物:果汁 参数(材料):进入方法的数据 返回值(产出物):就是方法 ...
- 2.Java基础:方法定义和调用
一.方法的定义 1.类的方法代表的是实力的某种行为(或功能) 方法的定义:方法类型 . 方法签名 . 方法体 2.定义类的方法 访问修饰符 类型 方法名(参数列表){ ///方法体 } 3.把方法当作 ...
- Java基础02 方法与数据成员
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在Java基础01 从HelloWorld到面向对象,我们初步了解了对象(obje ...
- Java基础——clone()方法浅析
一.clone的概念 clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象.所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象.那 ...
- [ 转载 ] Java基础13--equals方法
一.equals方法介绍 1.1.通过下面的例子掌握equals的用法 1 package cn.galc.test; 2 3 public class TestEquals { 4 public s ...
- java基础(7)--方法
方法 Math.sqrt() 取平方 Math.pow(2,3) 2的3次方 方法(Method),就是数学函数(Function). 业务方面: 是功能,是动作,一般采用动词命名. 数据层面:是利用 ...
- Java基础02 方法与数据成员(转载)
对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class).同一类的对象属于相同的类型(type).我们可以定义类,并使用该定义来产生对象. 调用同一对 ...
- java基础—equals方法
一.equals方法介绍 1.1.通过下面的例子掌握equals的用法 1 package cn.galc.test; 2 3 public class TestEquals { 4 public s ...
随机推荐
- 并查集 + 路径压缩(经典) UVALive 3027 Corporative Network
Corporative Network Problem's Link Mean: 有n个结点,一开始所有结点都是相互独立的,有两种操作: I u v:把v设为u的父节点,edge(u,v)的距离为ab ...
- 【计算机组成原理】中央处理器CPU
一.CPU的功能和基本结构 1.功能 当用计算机解决某个问题是,我们首先必须为他编写程序,程序是一个指令序列,这个序列明确告诉计算机应该执行什么操作,在什么地方找到用来操作的数据,一旦把程序装入内存器 ...
- Redis(六)管道(Pipelining)
管道技术并不是Redis特有的,管道技术在计算机科学中有很多地方的应用. 来自wiki的解释: In computing, a pipeline, also known as a data pipel ...
- 基于注解的SpringAOP源码解析(二)
在上篇文章 中我们搭建了一个阅读源码的demo工程,然后简单介绍了一下@EnableAspectJAutoProxy注解,这个注解最重要的功能就是为向Spring中注入了一个beanAnnotatio ...
- Vue配置路由和传参方式及路由守卫!
安装路由 npm i vue-router -S 引入路由 import VueRouter form VueRouter 注入路由模块 Vue.use(VueRouter) 定义路由匹配规则 let ...
- Centos下安装LoadRunner负载机
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAd0AAADfCAIAAAA84J6GAAAgAElEQVR4nJzb93cbR6In+uK/8v6Fd8
- JavaScript Timing 事件及两种时钟写法
JavaScript 可以在时间间隔内执行. 这就是所谓的定时事件( Timing Events). ------------------------------------------------- ...
- MySQL Error--InnoDB Table mysqlinnodb_index_stats has length mismatch in the column
使用MySQL 5.7.24版本的安装文件替换MySQL 5.7.19版本的安装文件,数据库复制频繁中断,查看error日志发现下面错误: [Warning] InnoDB: Table mysql/ ...
- 使用fio命令查看磁盘iops
具体命令: fio -filename=./localhost.2019-05-08.log -direct=1 -iodepth 1 -thread -rw=randrw -ioengine=psy ...
- kibana自动创建索引
一般索引按月.季或年为单位创建索引.我这里写成logstash-www-2019-03,www是URL的二级域名.格式类型完全根据自己方便就行. 当ELK集群中的索引过多时,我这里有100多个不同的日 ...