Java黑皮书课后题第7章:7.27(相同的数组)如果两个数组list1和list2的内容相同,认为相同(不是完全相同)。编写一个测试程序,提示用户输入两个整数列表,然后显示这两个列表是否相同
7.27(相同的数组)如果两个数组list1和list2的内容相同,认为相同(不是完全相同)。编写一个测试程序,提示用户输入两个整数列表,然后显示这两个列表是否相同
- 题目
- 题目描述与运行示例
- 破题
- 代码
题目
题目描述与运行示例
7.27(相同的数组)如果两个数组list1和list2的内容相同,认为相同(不是完全相同)。
使用下面的方法头编写一个方法,如果list1和list2完全相同,则返回true:
public static boolean equals(int[] list1, int[] list2)
编写一个测试程序,提示用户输入两个整数列表,然后显示这两个列表是否相同(不是完全相同)
运行示例:
Enter list1 size and contents: 5 2 5 6 6 1
Enter list2 size and contents: 5 5 2 6 1 6
Two lists are strictly identical
Enter list1 size and contents: 5 5 5 6 6 1
Enter list2 size and contents: 5 2 5 6 1 6
Twu lists are not strictly identical
破题
- 主方法:从控制台获取用户输入,先获取list1 size并赋值给length
- 主方法:声明一个数组,长度为length
- 主方法:通过循环接收list1 contents部分
- 主方法:以上步骤重复,接收list2
- 主方法:调用自定义方法equals,传入list1、list2,使用boolean接收方法结果
- 主方法:根据接收结果不同输出不同内容
- equals方法:获取list1、list2长度并比较,如果长度不等则直接返回false
- equals方法:对list1和list2进行排序,遍历list1、list2数组,如果元素有不相等的情况则直接返回false
- equals方法:如果遍历完后没有返回,则返回true
代码
import java.util.Arrays;
import java.util.Scanner;public class Test7_27 {public static void main(String[] args) {//1. 主方法:从控制台获取用户输入,先获取list1 size并赋值给lengthScanner input = new Scanner(System.in);System.out.print("Enter list1 size and contents: ");int length1 = input.nextInt();//2. 主方法:声明一个数组,长度为lengthint[] list1 = new int[length1];//3. 主方法:通过循环接收list1 contents部分for (int i = 0 ; i < length1 ; i++){list1[i] = input.nextInt();}//4. 主方法:以上步骤重复,接收list2System.out.print("Enter list2 size and contents: ");int length2 = input.nextInt();int[] list2 = new int[length2];for (int i = 0 ; i < length2 ; i++){list2[i] = input.nextInt();}//5. 主方法:调用自定义方法equals,传入list1、list2,使用boolean接收方法结果boolean bool = equals(list1, list2);//6. 主方法:根据接收结果不同输出不同内容if (bool){System.out.print("Two lists are strictly identical");}elseSystem.out.print("Twu lists are not strictly identical");}public static boolean equals(int[] list1, int[] list2){//7. equals方法:获取list1、list2长度并比较,如果长度不等则直接返回falseint length1 = list1.length, length2 = list2.length;if (length1 != length2)return false;//8. equals方法:对list1和list2进行排序, 遍历list1、list2数组,如果元素有不相等的情况则直接返回falseArrays.sort(list1);Arrays.sort(list2);for (int i = 0 ; i < length1 ; i++){if (list1[i] != list2[i])return false;}//9. equals方法:如果遍历完后没有返回,则返回truereturn true;}
}
Java黑皮书课后题第7章:7.27(相同的数组)如果两个数组list1和list2的内容相同,认为相同(不是完全相同)。编写一个测试程序,提示用户输入两个整数列表,然后显示这两个列表是否相同相关推荐
- Java黑皮书课后题第4章:4.4(几何:六边形面积)六边形面积可以通过下面公式计算(s是边长) 编写程序,提示用户输入六边形的边长,然后显示它的面积
4.4(几何:六边形面积)六边形面积可以通过下面公式计算(s是边长) 编写程序,提示用户输入六边形的边长,然后显示它的面积 题目 题目概述 运行示例 破题 代码 题目 题目概述 4.4(几何:六边形面 ...
- Java黑皮书课后题第6章:**6.25(将毫秒转化成小时、分钟、秒数)使用下面的方法头,编写一个将毫秒数转换成小时数、分钟数和描述的方法,返回形式如“小时:分钟:秒“
6.25(将毫秒转化成小时.分钟.秒数)使用下面的方法头,编写一个将毫秒数转换成小时数.分钟数和描述的方法,返回形式如"小时:分钟:秒" 题目 题目描述 破题 代码 运行实例 题目 ...
- Java黑皮书课后题第8章:*8.21(中心城市)给定一组城市,中心城市是和其它所有城市具有最短距离的城市。编写一个程序,提示用户输入城市数目以及位置(坐标),找到中心城市以及与其他城市总距离
*8.21(中心城市)给定一组城市,中心城市是和其它所有城市具有最短距离的城市.编写一个程序,提示用户输入城市数目以及位置(坐标),找到中心城市以及与其他城市总距离 题目 题目描述与运行示例 破题 代 ...
- Java黑皮书课后题第9章:*9.4(使用Random类)编写一个程序,创建一个种子为1000的Random对象,然后使用nextInt(100)方法显示0到100之间的前50个随机整数
Java黑皮书课后题第9章:*9.4(使用Random类)编写一个程序,创建一个种子为1000的Random对象,然后使用nextInt方法显示0到100之间的前50个随机整数 题目 赘述 代码 题目 ...
- Java黑皮书课后题第7章:*7.28(数学:组合)编写一个程序,提示用户输入10个整数,然后显示从这10个数中选出两个数的所有组合
7.28(数学:组合) 题目 题目描述 破题 代码 运行示例 题目 题目描述 *7.28(数学:组合)编写一个程序,提示用户输入10个整数,然后显示从这10个数中选出两个数的所有组合 破题 声明一个长 ...
- Java黑皮书课后题第3章:*3.8(对三个整数排序)编写程序,提示用户输入三个整数,以非降序的形式显示这三个整数
*3.8(对三个整数排序)编写程序,提示用户输入三个整数,以非降序的形式显示这三个整数 题目 题目概述 破题 代码 如何理解值的互换 题目 题目概述 *3.8(对三个整数排序)编写程序,提示用户输入三 ...
- Java黑皮书课后题第3章:**3.9(商业:检验ISBN-10)ISBN-10由10个个位整数d1d2d3d4d5d6d7d8d9d10组成,最后一位d10是校验和,输入前9个数,显示10位ISBN
**3.9(商业:检验ISBN-10)ISBN-10由10个个位整数d1d2d3d4d5d6d7d8d9d10组成,最后一位d10是校验和,输入前9个数,显示10位ISBN 题目 题目概述 运行示例 ...
- Java黑皮书课后题第9章:*9.3(使用Date类)编写程序创建一个Date对象,设置它的流逝时间分别为...,然后使用toString()方法分别显示上述日期
Java黑皮书课后题第9章:*9.3(使用Date类)编写程序创建一个Date对象,设置它的流逝时间分别为...,然后使用toString方法分别显示上述日期 题目 代码 思路 代码 题目 代码 思路 ...
- Java黑皮书课后题第1章:1.12(以千米计的平均速度)假设一个跑步者1小时40分35秒跑了24英里。编写一个程序显示以每小时为多少千米为单位的平均速度值(1英里等于1.6千米)
Java黑皮书课后题第1章:1.12(以千米计的平均速度) 题目 题目描述 破题 代码块 修改日志 题目 题目描述 1.12(以千米计的平均速度)假设一个跑步者1小时40分35秒跑了24英里.编写一个 ...
- Java黑皮书课后题第1章:*1.11(人口估算)编写一个程序,显示未来5年的每年人口数。假设当前的人口是312 032 486,每年有365天
Java黑皮书课后题第1章:*1.11(人口估算) 题目 题目描述 破题 代码块 方法评析 为什么print函数内的表达式不能分开 修改日志 题目 题目描述 *1.11(人口估算)编写一个程序,显示未 ...
最新文章
- android listview显示数据库内容
- Django中使用Celery
- 浅谈Floyd的三种用法 By cellur925
- java 里面matches什么意思_Java Regex中的matches()和find()之间的区别
- Android 滑动菜单框架--SwipeMenuListView框架完全解析
- 数据库审计产品购买者指南
- android 编程 输入矩阵,Android中Matrix的pre post set方法理解
- ppapi插件(可自定义方法)
- 计算机与资源管理器有何区别,在win7中双击打开计算机和右击打开资源管理器有什么区别...
- vios映射_以最低要求映射VIOS LUN
- 《五月集训》第二日——字符串
- 数据资产盘点的流程和方法
- python爬虫数据分析项目 双十一_Python爬取淘宝商品数据,价值千元的爬虫外包项目!...
- Mac电脑3D渲染和动画制作KeyShot Pro中文
- 突然发现CAD都是命令行不显示对话框了!!!
- 对象存储3:对象存储的原理、构造和详解
- 关于银环蛇Z370主板的,M.2固态与SATA接口冲突的解决办法
- 未来拟投10亿!保乐力加峨眉山威士忌酒厂正式揭幕;欧舒丹收购美国护理品牌约83%间接股权 | 美通社头条...
- html 高度塌陷,前端高度塌陷问题
- Java 并发编程内部分享PPT分享