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申明数组 ...
- Java 数组基础
数组 数组(Array):相同类型数据的集合. 定义数组 方式1(推荐,更能表明数组类型) type[] 变量名 = new type[数组中元素的个数]; 比如: int[] a = new int ...
随机推荐
- SQL Server数据库SP命令祥解
1.数据库: (1)sp_helpdb:报告有关指定数据库或所有数据库的信息.例:sp_helpdb --显示所有数据库信息(名称.大小等)例:sp_helpdb Recruitment -- ...
- 解决ssh登录后闲置时间过长而断开连接
++++++++++++++++++++++++++++ #!/usr/bin/env bash password_5="Uxxx7"host_5="129.x.x.1 ...
- 成都Uber优步司机奖励政策(2月6日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- Java IO复习 UDP
客户端: package cn.zyw.javaurl; import java.io.IOException; import java.net.*; /** * Created by zyw on ...
- c++回调编程本质
1. boost:bind获得一个函数对象,就像函数指针一样,这个行为可以作为回调 2. bosot:bind的函数对象可以保存别的对象的引用,回调对象的成员函数 3. boost:function是 ...
- POJ 3507 Judging Olympia
小技巧 判断 全部为零 用sign和所有元素依次取或 排除最大项和最小项 直接排序后取中间的四个元素 http://poj.org/problem?id=3507 1 #include <ios ...
- [转载] 详述三种现代JVM语言--Groovy,Scala和Clojure
转载自http://www.tuicool.com/articles/jYzuAv和http://www.importnew.com/1537.html 在我与Martin Fowler曾经合作呈现的 ...
- Java中的内存泄露的几种可能
Java内存泄漏引起的原因: 内存泄漏是指无用对象(不再使用的对象)持续占有内存或无用对象的内存得不到及时释放,从而造成内存空间的浪费称为内存泄漏. 长生命周期的对象持有短生命周期对象的引用就很可能发 ...
- L308 New brain cells made throughout life
People keep making new brain cells throughout their lives (well at least until the age of 97), accor ...
- Unity3D之预设
预设的两个特性: 1.重用性.可以使我们快速方便的创建大量的重复性资源.这种创建是通过预设的实例化Instance操作来完成的 在Hierarchy视图中将实例物理添加到Assests中,此时图标 ...