【BigData】Java基础_构造方法的使用
需求描述

实现上图需求,根据输入的三个人的信息,分别计算出这个三个客户的平均年龄和最大年龄
涉及知识点:
①构造方法
②字符串切割
③对象数组
代码实现
代码结构图:

package cn.test.logan.day03;
public class Person {
String custNo;
String custName;
int age;
String addr;
// 定义构造方法:用来构造一个对象时执行的初始化逻辑
public Person(String custNo,String custName,int age,String addr) {
this.custNo = custNo;
this.custName = custName;
this.age = age;
this.addr = addr;
}
}
package cn.test.logan.day03;
import java.util.Scanner;
public class PersonTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 输入数据
System.out.println("请输入第1个人的信息:");
String row1 = sc.nextLine();
String[] split1 = row1.split(",");
System.out.println("请输入第2个人的信息:");
String row2 = sc.nextLine();
String[] split2 = row2.split(",");
System.out.println("请输入第3个人的信息:");
String row3 = sc.nextLine();
String[] split3 = row3.split(",");
// 构造3个对象
Person p1 = new Person(split1[0],split1[1],Integer.parseInt(split1[2]),split1[3]);
Person p2 = new Person(split2[0],split2[1],Integer.parseInt(split2[2]),split2[3]);
Person p3 = new Person(split3[0],split3[1],Integer.parseInt(split3[2]),split3[3]);
// 求出平均年龄
int sum = p1.age + p2.age +p3.age;
float avg = (float)sum/3;
// 定义一个对象数组
Person[] ps = new Person[] {p1,p2,p3};
int tmp = ps[0].age;
for(int i=1;i<3;i++) {
if(ps[i].age > tmp ) {
tmp = ps[i].age;
}
}
System.out.println("平均年龄为:"+ avg);
System.out.println("最大年龄为:"+ tmp);
}
}
【BigData】Java基础_构造方法的使用的更多相关文章
- Java基础—String构造方法
Java基础--String构造方法 public String(): 创建一个空表字符串对象,不包含任何内容 public String(char[]chs): 根据字符数组的内容,来创建字符串对象 ...
- java基础知识 构造方法
在java里面,构造方法也就是构造函数 构造函数=构造方法;构造方法是一种特殊的方法,具有以下特点.(1)构造方法的方法名必须与类名相同.(2)构造方法没有返回类型,也不能定义为void,在方法名前面 ...
- 【BigData】Java基础_创建一个订单类
需求描述 定义一个类,描述订单信息订单id订单所属用户(用户对象)订单所包含的商品(不定数量个商品对象)订单总金额订单应付金额: 总金额500~1000,打折85折 总金额1000~150 ...
- 【BigData】Java基础_定义工具类,对ArrayList排序并且求最大值、最小值、平均值
需求描述 编写一个工具类,对ArrayList实现以下功能: ① 排序 ② 求最大值 ③ 求最小值 ④ 求平均值 需求实现 实现代码 package cn.test.logan.day04; impo ...
- 【BigData】Java基础_方法的定义与使用
1.概念 Java语言中的“方法”(Method)在其他语言当中也可能被称为“函数”(Function).对于一些复杂的代码逻辑,如果希望重复使用这些代码,并且做到“随时任意使用”,那么就可以将这些代 ...
- 【BigData】Java基础_类和对象的基本使用
1.需求描述 ①定义一个学生类,然后根据该类创建3个具体的学生对象 类中包含信息:学生姓名.学号.年龄.性别.所在地址 ②将这三个学生对象存入到数组中 ③然后将数组对象按照学生的年龄倒序排序 2.代码 ...
- 【BigData】Java基础_数组
什么是数组?数据是可以装一组数据的变量 1.定义数组 float[] arr1 = new float[10]; // 可以装10个float数据 int[] arr2 = new int[10]; ...
- 【BigData】Java基础_循环
1.for循环 语法: for (初始表达式;布尔表达式;步进) { 循环体: } 实例: package cn.test.logan.day02; import java.util.Scanner; ...
- 【BigData】Java基础_终端输入2个数字并求和
1.需求描述 在终端输入2个数字,然后根据输入的数字求和 2.实现代码 package cn.test.logan; import java.util.Scanner; public class Te ...
随机推荐
- Elasticsearch Field Options Norms
Elasticsearch 定义字段时Norms选项的作用 本文介绍ElasticSearch中2种字段(text 和 keyword)的Norms参数作用. 创建ES索引时,一般指定2种配置信息:s ...
- scala中的Option
Scala中Option是用来表示一个可选类型 什么是可选? --> 主要是指 有值(Some) 和 无值(None)-->Some和None是Option的子类 val myMap:Ma ...
- 使用linux/macos 自带的shell实现证书方式的快速登陆
一般登陆机器都是需要使用证书安全登陆到跳板机上然后在跳板机去登陆到各个机器. 我们建立一个统一的文件夹mykey,将登陆的pem证书放上去,然后创建一个空白的文件,vim jump.sh #!/usr ...
- spring-session(二)与spring-boot整合实战
前两篇介绍了spring-session的原理,这篇在理论的基础上再实战. spring-boot整合spring-session的自动配置可谓是开箱即用,极其简洁和方便.这篇文章即介绍spring- ...
- 2019-11-29-VisualStudio-使用三个方法启动最新-C#-功能
原文:2019-11-29-VisualStudio-使用三个方法启动最新-C#-功能 title author date CreateTime categories VisualStudio 使用三 ...
- H5页面基础元素
H5页面结构元素示例 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=&quo ...
- Sublimetext3运行Python及python交互环境配置(便捷大法)
1.首先安装Sublimetext3 安装路径保持默认,点击下一步直到安装完成. 2.安装Python 安装步骤参考百度:https://baijiahao.baidu.com/s?id=160657 ...
- Scanner 中next()和nexline()方法的区别
在java实现字符窗口的输入时,很多人更喜欢选择使用扫描器scanner,它操作起来比较简单.在编程的过程中,我发现用scanner实现字符串的输入有两种方法,一种是next(),另一种是next ...
- Eureka客户端续约及服务端过期租约清理源码解析
在之前的文章:EurekaClient自动装配及启动流程解析中,我们提到了在构造DiscoveryClient时除了包含注册流程之外,还调度了一个心跳线程: scheduler.schedule( n ...
- js计算数组中元素出现的次数,并实现去重
function getCount(arr, rank,ranktype){ var obj = {}, k, arr1 = []; for (var i = 0, len = arr.length; ...