包含考点:

  1. 对象数组的随机赋值
  2. 浮点数的指定位数
  3. 换用思路进行对象数组的某一属性进行排序

现有Book类,定义如下:

private String author;

private String ISBN;//书号

private double price;

public String getAuthor() {return this.author;}

public void setAuthor(String author) {this.author = author;}

public String getISBN() {return this.ISBN;}

public void setISBN(String ISBN) {this.ISBN = ISBN;}

public double getPrice() {return this.price;}

public void setPrice(double price) {this.price = price;}

请用一个数组存放随机产生的10个书籍对象,并显示其中书价最高的书号(要求使用对象数组完成)

package javaPractice;

import java.text.*;
import java.util.*; public class TestBook {
public static void main(String[] argsment) {
Book[] book = new Book[10];
int j=0,k=0;
String[] name1 = {"杨红云","吴军","屈婉玲","李开复","凡尔纳","王小波"};
String[] name2 = {"ISBN 962-215-001-2","ISBN 962-215-001-3","ISBN 962-215-001-4","ISBN 962-215-001-5","ISBN 962-215-001-6","ISBN 962-215-001-8","ISBN 962-215-002-21"};
Random random = new Random();
DecimalFormat df = new DecimalFormat( "0.00");
double[] arr = new double[10];
for(int i=0;i<book.length;i++) {
book[i] = new Book();
}
for(int i=0;i<book.length;i++) {
j = random.nextInt(name1.length);
k = random.nextInt(name2.length);
book[i].setAuthor(name1[j]);
book[i].setISBN(name2[k]);;
book[i].setPrice(random.nextDouble()*200);
arr[i] = book[i].getPrice();
}
for(int i=0;i<book.length;i++) {
System.out.print("author:"+book[i].getAuthor());
System.out.print(" "+book[i].getISBN());
System.out.println(" price:"+df.format(book[i].getPrice()));
}
Arrays.sort(arr);
for(int i=0;i<book.length;i++) {
if(book[i].getPrice() == arr[arr.length-1]) {
System.out.println("书价最高图书的书号为"+book[i].getISBN());
}
}
}
} class Book{
private String author;
private String ISBN;//书号
private double price; public String getAuthor() {return this.author;}
public void setAuthor(String author) {this.author = author;} public String getISBN() {return this.ISBN;}
public void setISBN(String ISBN) {this.ISBN = ISBN;} public double getPrice() {return this.price;}
public void setPrice(double price) {this.price = price;}
}

java数组--对象数组的随机赋值及其他的更多相关文章

  1. java 14-11 对象数组

    有5个学生,请把这个5个学生的信息存储到数组中,并遍历数组,获取得到每一个学生信息. 创建学生类: 学生:Student 成员变量:name,age 构造方法:无参,带参 成员方法:getXxx()/ ...

  2. php删除多重数组对象属性,重新赋值的方法

    php删除多重数组对象属性,重新赋值的方法 实例:sphinx搜索出来的结果,要去掉某个属性值:$cl = new SphinxClient ();$query = $cl->Query ( $ ...

  3. Java类对象数组声明和初始化

    Java是纯面向对象语言.类是其重要构成单位. 然后,在实际编程中,我们会自己定义一些类,如Point <span style="font-size:14px;">pu ...

  4. JS对象 Array 数组对象 数组对象是一个对象的集合,里边的对象可以是不同类型的。数组的每一个成员对象都有一个“下标”,用来表示它在数组中的位置,是从零开始的

    Array 数组对象 数组对象是一个对象的集合,里边的对象可以是不同类型的.数组的每一个成员对象都有一个"下标",用来表示它在数组中的位置,是从零开始的 数组定义的方法: 1. 定 ...

  5. Java修炼——对象数组存储表格数据

    数组存基本数据类型,也可以存引用数据类型 对象数组:使用数组存储对象(自定义对象) 先定义Person的三个私有变量,给他取值赋值方法,重写toString方法. package com.bjsxt. ...

  6. javascript数组/对象数组的深浅拷贝问题

    一.问题描述 在项目里的一个报名页面需要勾选两条信息(信息一和信息二),由于信息一和信息二所拥有的数据是一致的,所以后台只返回了一个对象数组,然后在前台设置了两个List数组来接收并加以区分.原型如下 ...

  7. java对象数组的概述和使用

    1 public class Student 2 { 3 // 成员变量 4 private String name; 5 private int age; 6 7 // 构造方法 8 public ...

  8. java 数组对象的应用

    public class Student 2 { 3 // 成员变量 4 private String name; 5 private int age; 6 7 // 构造方法 8 public St ...

  9. java基础(6)--数组和方法

    数组 1. 什么是数组? 数组是相同数据类型的元素组成的集合.这些元素按线性顺序排列.所谓线性顺序是指除第一个元素外,每一个元素都有唯一的前驱元素:除最后一个元素外,每一个元素都有唯一的后继元素.(“ ...

  10. Java中JNI的使用详解第五篇:C/C++中操作Java中的数组

    在Java中数组分为两种: 1.基本类型数组 2.对象类型(Object[])的数组(数组中存放的是指向Java对象中的引用) 一个能通用于两种不同类型数组的函数: GetArrayLength(ja ...

随机推荐

  1. Python - [03] 基础语法

    题记部分 一.标识符 第一个字符必须是字母表中字母或下划线_ 标识符的其他部分由字母.数字和下划线组成 标识符对大小写敏感 二.Python保留字 三.注释 (1)单行注释:以#开头 #!/usr/b ...

  2. MySQL - [07] 查看库表数据所使用的空间大小

    1.切换数据库:use information_schema; 2.查看数据库使用大小 SELECT concat(round(sum(data_length/1024/1024),2),'MB') ...

  3. Python装饰器:套层壳我变得更强了!

    Python装饰器:套层壳我变得更强了 Python装饰器:套层壳我变得更强了 关于作用域和闭包可以聊点什么? 什么是作用域 什么是闭包 装饰器:套层壳我变得更强了 参考资料 昨天阅读了<Pyt ...

  4. PHP 命名空间与spl_autoload_register() 自动加载机制

    转:https://www.cnblogs.com/chihuobao/p/9895202.html include 和 require 是PHP中引入文件的两个基本方法.在小规模开发中直接使用 in ...

  5. PPT_标题

    一 调节字体大小 1.字体-字魂71号-御守锦书 2.更改字体大小(138.96.80.80.96.138) 3.字体背景 复制背景图片->选择ppt文字->设置图片格式->选择来自 ...

  6. [python]pip换源详解

    [python]pip换源详解 前言 ‍ 现有的各个网站上的pip换源方式,很零散,或者是很单调的重复,又或者只是给出命令,尽管这通常就够用了. 但是,我希望汇总一下,然后再结合pip的官方文档来做一 ...

  7. pytorch报错 No module named 'nn'

    问题描述 pytorch 报错 No module named 'nn' 如果你 import torch 没问题,而 import torch.nn时出现问题,你可能命名使用了一个名字为 torch ...

  8. go mod 安装使用 beego

    go module基本使用 // 创建目录,初始化新项目 mkdir beemod cd beemod go mod init beemod 创建 server.go 文件 package main ...

  9. DTMF从2833到inband的方案

    概述 freeswitch是一款简单好用的VOIP开源软交换平台. 之前的文章中介绍过通过dialplan拨号计划配置的方法,实现2833到inband的转换,但是实际生产环境中的场景会更复杂,无法预 ...

  10. swich语句

    1.switch语句格式 括号内的是待匹配内容,然后case后的是被匹配内容,如果括号内的内容与case后的内容一致,则会打印语句体 . 2.实操(后面的省略了) 3.注意事项 1.case后面的值不 ...