JAVA数组案例!
数组的用例
一、案例需求:
有这样的一个数组,元素是{68,27,95,88,171,996,51,210}。求出该数组中满足要求的元素和, 要求
是:求和的元素个位和十位都不能是7,并且只能是偶数
如何分析呢?
0.定义数组。
1.定义变量存储最终求和的结果。
2.遍历数组中的每个元素值。
3.当前元素值必须满足:个位和十位都不能是7,并且只能是偶数 才能够被累加到求和变量中去。
4.循环结束之后输出求和变量即可。
定义数组
int[] arr = {68,27,95,88,171,996,51,210};
遍历数组中的每个元素值。
for (int i = 0; i < arr.length; i++) { // 2.遍历数组中的每个元素值。
// i = 0 1 2 3 4 5 6 7
// 当前元素值就是:arr[i]
if (arr[i]%10!=7&&arr[i]/10%10!=7&&arr[i]%2==0){
// 3.当前元素值必须满足:个位和十位都不能是7,
// 并且只能是偶数 才能够被累加到求和变量中去。
// 171 /10 = 17 % 10 = 7
System.out.println(arr[i]);
sum += arr[i]; // 累加满足需要的该值到求和变量sum中去。
}
}
最终成型
public class Test01 {
public static void main(String[] args) { int[] arr = {68,27,95,88,171,996,51,210}; // 0.定义数组。 int sum = 0; // 1.定义变量存储最终求和的结果。 for (int i = 0; i < arr.length; i++) { // 2.遍历数组中的每个元素值。
// i = 0 1 2 3 4 5 6 7
// 当前元素值就是:arr[i]
if (arr[i]%10!=7&&arr[i]/10%10!=7&&arr[i]%2==0){
// 3.当前元素值必须满足:个位和十位都不能是7,
// 并且只能是偶数 才能够被累加到求和变量中去。
// 171 /10 = 17 % 10 = 7
System.out.println(arr[i]);
sum += arr[i]; // 累加满足需要的该值到求和变量sum中去。
}
}
System.out.println("结果是:"+sum); // 4.循环结束之后输出求和变量。
}
}
二、
案例需求:
定义一个方法,用于比较两个数组的内容是否相同和不相同。
int[] arr1 = {};
int[] arr2 = {};
分析步骤:
a、定义2个数组。
b、定义一个方法封装判断数组内容是否相同的功能,所以这个方法就应该接受2个数组。
这个方法最好给它一个返回值,认为相同返回true, 反之返回false.
b.调用方法传入数组,得到比较结果:false|true。
// 1.定义2个数组。
int[] arr1 = {7,17,27,37,77,107};
int[] arr2 = {7,17,27,37,77,107,117};
// 2.定义一个方法封装判断数组内容是否相同的功能
public static boolean compare(int[] arr1,int[] arr2)
// 3.传入两个数组到方法中进行比较得到方法的返回值
boolean result = compare(arr1, arr2);
System.out.println(result);
// 4.判断2个数组的内容是否相同
// 判断2个数组的长度是否相同,如果长度不相同直接返回false.
if (arr1.length != arr2.length) return false;
// 5.到这儿数组的长度已经是相同的,接下来要判断具体的每个元素值是否也相同!
// 使用一个循环遍历两个数组的元素进行比较
for (int i = 0; i < arr1.length; i++) {
// 6.判断元素内容是否相同 ,如果发现有一个不同就直接返回false
if (arr1[i] != arr2[i]) return false;
// 7.代码如果执行到这儿了,说明两个数组的每个元素都相同了,直接返回true
return true;
最终成型
public class Test02 {
public static void main(String[] args) {
// 1.定义2个数组。
int[] arr1 = {7,17,27,37,77,107};
int[] arr2 = {7,17,27,37,77,107,117}; // 3.传入两个数组到方法中进行比较得到方法的返回值
boolean result = compare(arr1, arr2);
System.out.println(result);
}
// 2.定义一个方法封装判断数组内容是否相同的功能
public static boolean compare(int[] arr1,int[] arr2) { // 4.判断2个数组的内容是否相同
// 判断2个数组的长度是否相同,如果长度不相同直接返回false.
if (arr1.length != arr2.length) return false; // 5.到这儿数组的长度已经是相同的,接下来要判断具体的每个元素值是否也相同!
// 使用一个循环遍历两个数组的元素进行比较
for (int i = 0; i < arr1.length; i++) { // 6.判断元素内容是否相同 ,如果发现有一个不同就直接返回false
if (arr1[i] != arr2[i]) return false;
}
// 7.代码如果执行到这儿了,说明两个数组的每个元素都相同了,直接返回true
return true;
}
}
今天的分享就这样吧!
JAVA数组案例!的更多相关文章
- [转载]Java数组扩容算法及Java对它的应用
原文链接:http://www.cnblogs.com/gw811/archive/2012/10/07/2714252.html Java数组扩容的原理 1)Java数组对象的大小是固定不变的,数组 ...
- JAVA实用案例之文件导出(JasperReport踩坑实录)
写在最前面 想想来新公司也快五个月了,恍惚一瞬间. 翻了翻博客,因为太忙,也有将近五个多月没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六 ...
- Java基础学习-Random类和Java数组
1.随机数类(Random) package com.denniscui; import java.util.Random; /* * Random:用于产生随机数 * * 使用步骤: * ...
- Java 基本语法---Java数组
Java 基本语法---Java数组 0. 概述 数组:相同类型的数据 按照顺序 组成的一种 引用数据类型 . 数据类型:基本数据类型 + 引用数据类型: 引用数据类型:类 + 接口 + 数组 : 一 ...
- Java 基础案例
1.变量及基本数据类型 案例1:变量声明及赋值 //1.变量的声明 int a; //声明一个整型的变量a int b,c,d; //声明三个整型变量b,c,d //2.变量的初始化 int a = ...
- JAVA数组的基础入门>从零开始学java系列
目录 JAVA数组的基础入门 什么是数组,什么情况下使用数组 数组的创建方式 获取数组的数据 数组的内存模型 为什么数组查询修改快,而增删慢? 查询快的原因 增删慢的原因 数组的两种遍历方式以及区别 ...
- Java——数组的定义与使用
数组的定义与使用 1.数组的基本概念 (1)数组的动态初始化: 数组首先先开辟内存空间,而后再使用索引进行内容的设置,这种定义数组的方式称为动态初始化 数组是引用数据类型,存在有内存分配问题.在使用前 ...
- Java 数组
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java语言中提供的数组是用来存储固定大小的同类型元素. 你可以声明一个数组变量,如numbers[100 ...
- 第5章 Java数组
1.什么是数组 数组可以想象成一个巨大的盒子,这个盒子里面存放的是同一个数据类型的数据 例如:int[] scores = {78,68,94,93}; 2.如何使用Java中的数组 2.1申明数组 ...
随机推荐
- 前端面试题整理——VUE相关题目与回答
1.v-if与v-show的区别? v-if的原理是根据判断条件来动态的进行增删DOM元素, v-show是根据判断条件来动态的进行显示和隐藏元素,频繁的进行增删DOM操作会影响页面加载速度和性能所以 ...
- Spring的事务控制-基于xml方式
介绍:该程序模拟了转账操作,即Jone减少500元,tom增加500元 1.导入坐标 <dependency> <groupId>junit</groupId> & ...
- 虚拟机安装linux
https://blog.csdn.net/wujiele/article/details/92803655https://www.cnblogs.com/yunwangjun-python-520/ ...
- STL空间分配器源码分析(二)mt_allocator
一.简介 mt allocator 是一种以2的幂次方字节大小为分配单位的空间配置器,支持多线程和单线程.该配置器灵活可调,性能高. 分配器有三个通用组件:一个描述内存池特性的数据,一个包含该池的策略 ...
- 界面优化--如何提升用户体验(Velocity.js和GSAP)
Velocity.js和GSAP 我们需要提升代码质量来留住用户.作为用户界面的建设者,我们的工作是迅速引导和引导用户的注意力,指导他们如何有效地使用我们的应用程序. 1. 如何提升代码质量 定向聚焦 ...
- line-height: 1; line-height: 100%;是什么意思
先简单看个例子: css 页面: 应该猜测出来了: line-height: 1; = line-height: 100%; = font-size: 50px; 把哪一个放到最后都是一样的.我理解的 ...
- thinkphp6事件监听event-listene
事件系统可以看成是行为系统的升级版,相比行为系统强大的地方在于事件本身可以是一个类,并且可以更好的支持事件订阅者. 事件相比较中间件的优势是事件比中间件更加精准定位(或者说粒度更细),并且更适合一些业 ...
- Promise的then和catch如何影响状态的变化
记住两句话: 1.then正常返回resolved,里面有报错返回reject 1 const p1 = Promise.resolve().then(()=>{ 2 console.log(1 ...
- python基础练习题(题目 对10个数进行排序)
day24 --------------------------------------------------------------- 实例037:排序 题目 对10个数进行排序. 分析:先输入1 ...
- JVM组成、GC回收机制、算法、JVM常见启动参数、JAVA出现OOM,如何解决、tomcat优化方法
JVM组成.GC回收机制.算法.JVM常见启动参数.JAVA出现OOM,如何解决.tomcat优化方法