我的java之路week2类的无参、带参方法
2.1语法
public 返回值类型 方法名(){
//方法体
}
2.2方法的调用语法
对象名.方法名
计算平均分和总成绩
public class Score {
/**
* 创建类 ScoreCalc 编写方法实现各功能 编写测试类
* 从键盘接收三门课分数,(java c# db)
* 计算三门课的平均分和总成绩,
* 编写成绩计算类实现功能 _______
*/
int java;
int c;
int db;
public double avg() {
double a = (double) (java + c + db) / 3;
return a;
}
public int addAll() {
int ad = java + c + db;
return ad;
}
}
Score
import java.util.Scanner;
public class TestScore {
public static void main(String[] args) {
Score sc=new Score();
Scanner input=new Scanner(System.in);
System.out.println("请输入java成绩:");
sc.java=input.nextInt();
System.out.println("请输入c成绩:");
sc.c=input.nextInt();
System.out.println("请输入db成绩:");
sc.db=input.nextInt();
System.out.println(sc.addAll());//总成绩
System.out.println(sc.avg());//平均成绩
}
}
TestScore
package week2;
public class Manager {
String name;
String password;
/**
* 打印学员信息
*/
public void show() {
System.out.println("管理员名为:"+name+"\n密码为:"+password);
}
}
package week2;
public class TestManager {
public static void main(String[] args) {
Manager manager=new Manager();
manager.name="王铎";
manager.password="123";
manager.show();
}
}
TestManager
2.3用数组作为参数
package week2;
public class JavaScore {
public double avg(int[] scores) {
int sum = 0;
double avg1 = 0.0;
for (int i = 0; i < scores.length; i++) {
sum = sum + scores[i]; }
avg1 = (double) sum / scores.length; return avg1; }
public int max(int[] scores) {
int max1 = scores[0];
for (int i = 0; i < scores.length; i++) {
if (max1 < scores[i]) {// 最大值
max1 = scores[i]; }
}
return max1; } }
package week2;
import java.util.Scanner;
public class TestScore {
public static void main(String[] args) {
JavaScore javascore=new JavaScore();
int []scores=new int [4];
Scanner input=new Scanner(System.in);
System.out.println("请输入5名参赛者的平均成绩:");
for (int i = 0; i < scores.length; i++) {
scores[i]=input.nextInt();
}
//pingj
javascore.avg(scores);
}
}
2.4多个参数的方法
package week2;
public class StudentBz {
String[] names = new String[30];
// 添加学生信息
public void addName(String name) {
for (int i = 0; i < names.length; i++) {
if (names[i] == null) {
names[i] = name;
break;
}
}
}
// 展示学生信息
public void nameShow() {
for (int i = 0; i < names.length; i++) {
if (names[i] != null) {
System.out.print(names[i] + ",");
}
}
}
public boolean searchFind(int start, int end, String name) {
boolean find = false;// 标识查找的位置
for (int i = start - 1; i < end; i++) {// i=start-1sss数组下标
if (names[i].equals(name)) {
find = true;
break;
}
}
return find;
}
public boolean updateName(String newName, String oldName) {
boolean find = false;
// 查找老name
for (int i = 0; i < names.length; i++) {
if (oldName.equals(names[i])) {
names[i] = newName;
find = true;
break;
}
}
return find;
}
}
package week2;
import java.util.Scanner;
public class TestAdd {
public static void main(String[] args) {
StudentBz stu=new StudentBz();
for (int i = 0; i < 3; i++) {
Scanner input=new Scanner(System.in);
System.out.print("请输入学生姓名:");
String na=input.next();
stu.addName(na);
}
stu.nameShow();
boolean result=stu.searchFind(2, 5, "name2");
System.out.println(result);
boolean updateResult=stu.updateName("newName", "name2");
System.out.println("是否修改成功"+updateResult);
stu.nameShow();
}
}
2.5对象作为参数
package week2;
public class Student {
String name;
int age;
int no;
int score;
}
Student
package week2;
public class StudentBz2 {
Student students[] = new Student[30];
public void addStudent(Student student) {
for (int i = 0; i < students.length; i++) {
if (students[i] == null) {
students[i] = student;
break;
}
}
}
public void showStudent() {
for (int i = 0; i < students.length; i++) {
if (students[i] != null) {
System.out.println(students[i].name + "," + students[i].age
+ "," + students[i].no + "," + students[i].score + ",");
}
}
}
}
StudentBz2
package week2;
import java.util.Scanner;
public class TestStudentBz2 {
public static void main(String[] args) {
StudentBz2 stubz=new StudentBz2();
Scanner input=new Scanner(System.in);
for (int i = 0; i < 2; i++) {
Student stu=new Student();//循环几次出现几个对象
System.out.print("请输入姓名:");
stu.name=input.next();
System.out.print("请输入年龄:");
stu.age=input.nextInt();
System.out.print("请输入学号:");
stu.no=input.nextInt();
System.out.print("请输入成绩:");
stu.score=input.nextInt();
stubz.addStudent(stu);
}
System.out.println();
stubz.showStudent();
}
}
TestStudentBz2
练习实现对客户姓名的排序
package week2;
import java.util.Arrays;
public class KH {
public void sortName(String []names) {
Arrays.sort(names);
}
}
KH
package week2;
public class KHTest {
public static void main(String[] args) {
String []names={"j","sds","sdssf","ssf"};
KH kh=new KH();
System.out.println("排序前");
for (int i = 0; i < names.length; i++) {
if (names[i]!=null) {
System.out.println(names[i]+",");
}
}
kh.sortName(names);
System.out.println("排序后");
for (int i = 0; i < names.length; i++) {
if (names[i]!=null) {
System.out.println(names[i]+",");
}
}
}
}
KHTest
带参数练习
package week2;
public class CustomerBiz {
String []customer=new String[30];
public void addName(String name) {
for (int i = 0; i < customer.length; i++) {
if (customer[i]==null) {
customer[i]=name;
break;
}
}
}
public void showNames() {
System.out.println("*****************");
System.out.println("客户姓名列表");
for (int i = 0; i < customer.length; i++) {
if (customer[i]!=null) {
System.out.println(customer[i]+",");
}
}
}
}
CustomerBiz
package week2;
import java.util.Scanner;
public class TestCustomer {
public static void main(String[] args) {
boolean con = false;
CustomerBiz cust = new CustomerBiz();
Scanner input = new Scanner(System.in);
for (int i = 0; i < 3; i++) {
System.out.print("请输入客户姓名:");
String na = input.next();
cust.addName(na);
System.out.println("是否继续(y/n)");
String n = input.next();
if (!n.equals("y")) {
}
}
cust.showNames();
}
}
TestCustomer
我的java之路week2类的无参、带参方法的更多相关文章
- 083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法
083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法 本文知识点:构造方法-带参构造方法 说明:因为时间紧张, ...
- Java 第11章 类的无参方法
类的无参方法 类的方法由哪几部分组成? 方法的定义: 1.访问权限修饰符 2.方法返回的数据类型 3.方法的名称 4.方法的主体 成员变量和局部变量的区别有那些? ~ 作用域不同 - 成员变量的作用域 ...
- 使用反射创建Bean、Spring中是如何根据类名配置创建Bean实例、Java提供了Class类获取类别的字段和方法,包括构造方法
Java提供了Class类,可以通过编程方式获取类别的字段和方法,包括构造方法 获取Class类实例的方法: 类名.class 实例名.getClass() Class.forNam ...
- Java基础:Object类中的equals与hashCode方法
前言 这个系列的文章主要用来记录我在学习和复习Java基础知识的过程中遇到的一些有趣好玩的知识点,希望大家也喜欢. 一切皆对象 对于软件工程来说面向对象编程有一套完整的解决方案:OOA.OOD.O ...
- java利用反射访问类的私有(private)属性及方法
Java语言中,在一个类中,为了不让外界访问到有的属性和方法,通常将其设置为private,用正常的方式(对象名.属性名,对象名.方法名)将无法访问此属性与方法,但有没有其他方法可以访问呢?答案是有的 ...
- Java第二天,类的概念,属性和方法的使用
上文中我们已近说到过了,Java是一种面向对象的编程语言,对象是用类来创建的,就比如世界上有无数个父亲,但是他们都有一个共同的属性--男人.也就是说某个父亲这个对象属于男人这个类.类是Java必不可少 ...
- Java执行系统命令工具类(JDK自带功能)
CommandUtil.java package utils; import java.io.ByteArrayOutputStream; import java.io.IOException; im ...
- Java中的class类的cast方法和asSubclass方法
一般来说cast是转型的意思,但是学java的时间也不短了,class类居然还有cast这个方法,这里来学习一下这个cast有何用. 第一次看到这个cast是在Spring的源码中, spring-f ...
- 059、Java中定义一个有参数无返回值的方法
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
随机推荐
- iOS学习——Xcode9上传项目到GitHub
最近通过视频在学习一个完整项目的开发流程和思路,为了更真实地模拟在实际开发中的流程,我们需要将项目的代码以及一些资料进行版本控制和管理,一般比较常用的SVN或者Github进行代码版本控制和项目管理. ...
- Windows10 环境下安装 ElasticSearch
环境与版本 操作系统:windows 10 Elasticsearch 版本:6.1.1 Java 版本:9.0.1 ik 分词器版本:6.1.1 安装步骤 前置要求 操作系统中需要安装有 java ...
- faster-rcnn系列笔记(一)
目录: 1. 序言 2.正文 2.1 关于ROI 2.2 关于RPN 2.3 关于anchor 3. 关于数据集合制作 4. 关于参数设置 5. 参考 1.序言 叽歪一下目标检测这个模型吧,这篇笔 ...
- bzoj:1575: [Usaco2009 Jan]气象牛Baric
Description 为了研究农场的气候,Betsy帮助农夫John做了N(1 <= N <= 100)次气压测量并按顺序记录了结果M_1...M_N(1 <= M_i <= ...
- Codeforces 791A Bear and Big Brother(暴力枚举,模拟)
A. Bear and Big Brother time limit per test:1 second memory limit per test:256 megabytes input:stand ...
- 51Nod 1003 阶乘后面0的数量(数学,思维题)
1003 阶乘后面0的数量 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 n的阶乘后面有多少个0? 6的阶乘 = 1*2*3*4*5*6 = 720 ...
- bzoj:3392: [Usaco2005 Feb]Part Acquisition 交易
Description 奶牛们接到了寻找一种新型挤奶机的任务,为此它们准备依次经过N(1≤N≤50000)颗行星,在行星上进行交易.为了方便,奶牛们已经给可能出现的K(1≤K≤1000)种货物 ...
- BZOJ 1257: [CQOI2007]余数之和sum【神奇的做法,思维题】
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 4474 Solved: 2083[Submit][St ...
- Uva 10339 - Watching Watches【数论,暴力】
题目链接:10339 - Watching Watches 题意:两个时钟,一个每天慢a秒,一个每天慢b秒,问两钟重新相遇的时刻 1圈有12 * 60 * 60秒,然后1圈 / abs(a - b), ...
- android小说阅读源码、bilibili源码、MVP新闻源码等
Android精选源码 一款基于 MVP+RxJava2+Retrofit2 的应用--熊猫眼 android 五子棋源码分享 android实现全国地图点击效果 android实现立体图案绘制的代码 ...