小白的java学习之路 “ 带参数的方法”
一.带参数的方法:
1.1 语法:
<访问修饰符> 返回类型 <方法名>(<形式参数列表>) { //方法的主体
}
1.2 案例:
榨汁机
public class ZhazhiJi {
//带参数的方法
public String zhazhi(String fruit){//形参
String juice=fruit+"汁";
return juice;
} }
public class ZhazhijiTest {
public static void main(String[] args) {
//创建类的对象实例
ZhazhiJi zhazhiji=new ZhazhiJi();
//用.的方式进行调用
String fruit="苹果";
String juice = zhazhiji.zhazhi(fruit); //实参
System.out.println(juice);
}
}
1.3 形参和实参:
形参代表定义方法时括号内的参数(参数列表) public void xc(形参)
实参代表在调用方法时方法括号内的参数(参数列表) . xc(实参);
1.4 携带多个参数:
注意:当携带多个参数时,实参列表需要和形参列表的顺序和数据类型保持一致
案例:从开始位置开始查找数组中是否有学生姓名,查找到结束位置
//从开始位置到结束位置查找学生
public void seachStudent(int firstindex,int secondindex,String name){
for (int i = firstindex; i <=secondindex; i++) {
if(names[i].equals(name)){
System.out.println("找到了!");
break;
}else{
System.out.println("没找到!");
}
}
} stu.seachStudent(,,"陈八");
二.数组作为参数:
案例:有5位学员参加了Java知识竞赛的决赛,输出决赛的平均成绩和最高成绩
public class JavaScore { //计算平均成绩
public double avgscore(double[] score){
double avg=0.0; //平均分
double sum=0.0; //总成绩
for (int i = ; i < score.length; i++) {
sum=sum+score[i];
}
avg=sum/score.length;
return avg;
} //计算数组的最高成绩
public double maxscore(double[] score){
double max=score[]; //最高分
for (int i = ; i < score.length; i++) {
if(max<score[i]){
max=score[i];
}
}
return max;
}
}
public class JavaScoreTest {
public static void main(String[] args) {
double [] scores=new double[];
Scanner input=new Scanner(System.in);
for (int i = ; i < scores.length; i++) {
System.out.println("请输入第"+(i+)+"位学员的成绩:");
double score=input.nextDouble();
scores[i]=score;
}
JavaScore javascore=new JavaScore();
double avgscore = javascore.avgscore(scores);
double maxscore = javascore.maxscore(scores);
System.out.println("平均成绩为:"+avgscore);
System.out.println("最高成绩为:"+maxscore);
}
}
三.对象作为参数:
对象数组:
例如:Student [] stus=new Student[5];
访问对象数组中的元素通过stus[]的方式进行访问
案例:在实现了增加一个学生姓名的基础上,增加学生的学号、年龄和成绩,并显示这些信息
public class Student { int stuno; // 学号
String name; // 姓名
int age; // 年龄
double score; // 成绩
/**
* 创建一个数组:保存学 生
*/
Student[] stus = new Student[]; // 对象数组:存储一堆对象 对象类型 // 添加学生
public void addStudent(Student stu) {
for (int i = ; i < stus.length; i++) {
if (stus[i] == null) {
stus[i] = stu;
break;
}
}
} // 展示学生信息
public void showStudent() {
for (int i = ; i < stus.length; i++) {
if (stus[i] != null) {
System.out.println(stus[i].stuno + "\t" + stus[i].name + "\t"
+ stus[i].age + "\t" + stus[i].score);
}
}
} }
public class StudentTest {
public static void main(String[] args) {
/*Student stu1=new Student();
stu1.name="陈璟瑜";
stu1.stuno=001;
stu1.age=20;
stu1.score=99.99;
stu1.addStudent(stu1);
Student stu2=new Student();
stu2.name="杨金川";
stu2.stuno=002;
stu2.age=18;
stu2.score=100;
stu1.addStudent(stu2);
stu1.showStudent();*/ Scanner input=new Scanner(System.in);
Student stus=new Student();
for (int i = ; i <=; i++) {
Student stu=new Student();
System.out.println("请输入第"+i+"位学生编号:");
stu.stuno=input.nextInt();
System.out.println("请输入第"+i+"位学生姓名:");
stu.name=input.next();
System.out.println("请输入第"+i+"位学生年龄:");
stu.age=input.nextInt();
System.out.println("请输入第"+i+"位学生成绩:");
stu.score=input.nextDouble();
stus.addStudent(stu);
}
stus.showStudent(); }
}
四.包
好处:
1.允许类组成较小的单元(类似文件夹),易于找到和使用相应的文件
2.防止命名冲突
3.更好的保护类、属性和方法
创建包的语法:package
导入包的语法:import
创建包的两种方式:
1.选择项目下的src目录右键-->New-->package
2.创建类的时候指定包名,如果没有包,则为默认的default package
小白的java学习之路 “ 带参数的方法”的更多相关文章
- Java 第13章 带参数的方法
带参数的方法 无参方法有那几个组成部分? 调用无参方法的两种形式是什么? 第一种:同一个类中的方法调用 直接用方法名 show(): 第二种:不同类中的方法调用 -->对象实例化 -->对 ...
- 小白的java学习之路 “ 循环结构(二)”
一.for 循环 语法: for(表达式一;表达式二;表达式三){ 循环操作 } 表达式一:参数初始化 表达式二:条件判断 表达式三:更新循环变量 执行流程: 步骤一:执行表达式一.初始化参数 步骤二 ...
- 小白的java学习之路 “ 循环结构(一)”
循环: 重复得做某一件事情 举例: 打印50份试卷 沿操场跑10圈 做100道编程题 循环结构的特点: 循环条件 (50,10,100) 循环操作 (打印试卷,沿操场跑圈,做编程题) while 循环 ...
- 小白的java学习之路 “ 选择结构(一)”
if选择结构: if选择结构是根据条件判断之后再做处理的一种语法结构. 1.if选择结构的语法: public class Demo{ public static void main(String[] ...
- 小白的java学习之路 “ 变量、数据类型和运算符”
一.变量: 1.什么是变量? 变量是一个数据存储空间的表示 变量由:变量名 变量类型 变量的值 2.创造变量的两种方法: 1.声明-->赋值-->取值 //声明变量 int money ...
- 小白的java学习之路 "类的无参方法"
Java注释: //:单行注释 /**/:多行注释 /** */:JavaDoc注释语法: 访问修饰符 返回值类型 方法名(){ 方法体 } 举例: public void run(){ System ...
- 小白的java学习之路 “ 类和对象”
一.※ 万物皆对象 二.对象的两个特征: 属性:对象具有的各种特征 方法:对象执行的操作 对象:用来描述客观事物的一个实体,由一组属性和方法构成 三.封装: 对象同时具有属性和方法两项特性 对象的属性 ...
- 小白的java学习之路 “ 二重循环”
二重循环: 1.什么是二重循环: 一个循环体内又包含另一个完整的循环结构 语法: while(循环条件1) { //循环操作1 while(循环条件2) { //循环操作2 } } do { //循环 ...
- 小白的java学习之路 “ 数组”
数组 一.什么是数组: 数组是一个变量,存储相同数据类型的一组数据 声明一个变量就是在内存空间划出一块合适的空间 声明一个数组就是在内存空间划出一串连续的空间 二.数组基本要素: 标识符:数组的名称, ...
随机推荐
- linux内核编译 fatal error: openssl/opensslv.h: No such file or directory
ubuntu下缺少了的组件,安装即可: sudo apt-get install libssl-dev
- oracle数据库的启动、关闭、连接
登陆数据库 方法一: $ sqlplus / as sysdba [oracle@dev /]$ sqlplus / as sysdba SQL*Plus: Release Production on ...
- ES6 - 基础学习(3): 变量的解构赋值
解构赋值概述 1.解构赋值是对赋值运算符的扩展. 2.它是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值. 3.代码书写上显得简洁且易读,语义更加清晰明了:而且还方便获取复杂对象中的数据字 ...
- centos下mysql中table大小写改为不敏感
项目由win系统部署到linux系统下,启动项目报错如下: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: ...
- MRAM技术进入汽车应用
在整个地址空间范围内读写各种类型的数据.通常MRAM的操作和时序类似于32位微控制器的规范和时序.与DLFASH相比,当今的非易失性存储器可以接受MRAM设备的性能和吞吐量. 与当今的DFLASH相比 ...
- 关于GC(垃圾回收)
当我用new创建一个对象时,当可分配的内存不足GC就会去回收未使用的对象,但是GC的操作是非常复杂的,会占用很多CPU时间,对于移动设备来说频繁的垃圾回收会严重影响性能.下面的建议可以避免GC频繁操作 ...
- ubuntu 安装mysql数据库
apt方式安装 官网参考: https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/ 执行命令: sudo wget https://dev.m ...
- 鼠标经过INPUT时自动获取焦点
鼠标经过INPUT时自动获取焦点 <input type="text" name="addr" onMouseOver="this.focus( ...
- CentOS7安装postgreSQL11
1.添加PostgreSQL Yum存储库 sudo yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel- ...
- KMP刷题记录
[BZOJ4698][SDOI2008]Sandy的卡片 差分一下然后选一个串,用这个串的所有前缀和其他串kmp,求出最长的公共部分即可 代码: #include <bits/stdc++.h& ...