JAVA----数组(一)
这几天看了一下有关JAVA的数组部分,下面就写几个有关数组的代码利于掌握;
㈠复制数组;
利用的是System.arraycopy(src, srcPos, dest, destPos, length);
其中五个参数的意义代表 src--被复制数组,srcpos---从第几个元素开始复制,dest---要复制的数组,destpos---从第几个元素开始存储,length----一共需要复制的数组个数;
实现的功能就是把a数组中得内容从a[0]复制到b数组中,b数组从b[2]开始接收a数组的内容,接收数目为3个,所以b[2]到b[5]就存储a数组的a[0]--a[3]的内容
代码如下:
package Practise; public class ArrayCopy {public static void main(String[] args){String[] a = {"liao", "cheng", "shi", "dou"};String[] b = new String[a.length + 1];//数组b的初始化,申请的长度比a大一System.arraycopy(a, 0, b, 2, 3);//从a的第一个元素开始复制,b从第二个元素开始接收三个元素for (int i = 0; i < b.length; i++){System.out.println(b[i]);}} }
运行结果如下:
㈡引用Copy
代码如下:
package Practice; public class ReferenceCopyArray{public static void main(String[] args){int [] a = {2, 4, 6, 8, 10};定义一个数组int [] b = a;将a赋值给ba[0] = 1;a[1] = 3;a[2] = 5;a[3] = 7;a[4] = 9;for (int i = 0; i < b.length; i++){System.out.print(b[i] + " ");}}}
运行结果:
1 3 5 7 9
解释:有的人说为什么不是输出的是2, 4, 6, 8, 10;因为这是引用复制,对a的操作其实就是对b的操作,a改变即b改变;相当于C++中得引用&;
㈢不规则数组的测试
代码如下:
package Practice; import java.util.Arrays; public class RaggedArray {public static void main(String[] arg){int [][] raggedArray = new int[10][];//新建一个不规则数组,一维数组元素个数为10for (int i = 0; i <raggedArray.length; i++){//在第一维上进行遍历raggedArray[i] = new int[i + 1];//初始化二维数组(长度是变化的)for (int j = 0; j < raggedArray[i].length; j++){raggedArray[i][j] = j;//为二维数组每一个元素赋值 }}/** 第一种输出格式,转化成字符串输出for (int i = 0; i < raggedArray.length; i++){String arrayStr = Arrays.toString(raggedArray[i]);//将二维数组的每一个元素转化成字符串System.out.println(arrayStr);}*///第二种输出格式,正常的输出for (int i = 0; i < raggedArray.length; i++){for (int j = 0; j < raggedArray[i].length; j++){System.out.print(raggedArray[i][j] + " ");}System.out.println();}} }
第一种的输出格式,转化成字符串形式输出
第二种输出格式为:
转载于:https://www.cnblogs.com/lidaojian/archive/2012/06/02/2532129.html
JAVA----数组(一)相关推荐
- java数组简单介绍以及其方法
小谈一下java数组 数组是存放数据的容器,有两个特点:元素类型唯一,长度固定. 一维数组声明:类型[] 数组名;类型 数组名[];推荐用前一种. 多维数组声明同样是以上要求. 在数组创建时,要注意一 ...
- java 数组 反射_java数组的反射
java数组的反射,有一个JAVA API类可以运用:java.lang.reflect.Array 具体应用: 1:判断一个对象是否是数组: int arr[] = {1,2,3}; Class c ...
- java 2维数据便利_计算机等级考试二级java数组辅导
数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法. 注意: ...
- (二十六)、Java数组在内存中如何存放与分配
Java中有两种类型的数组: 基本数据类型数组: 对象数组: 当一个对象使用关键字"new"创建时,会在堆上分配内存空间,然后返回对象的引用,这对数组来说是一样的,因为数组也是一个 ...
- (PASS)JAVA数组去重 三种方法 (不用集合)
第一种方法(只学到数组的看): 定义一个新的数组长度和旧数组的长度一样,存储除去重复数据的旧数组的数据和0, package demo01;import java.sql.Array; import ...
- Java数组的基本操作方法整理
数组是具有相同数据类型的一组数据的集合,Java支持多为数组,一维数组的每个基本单元都是基本数据类型的数据,二维数组就是每个基本单元是一维数组的一维数组,以此类推,n维数组的每个基本单元都是n-1为数 ...
- Java数组常见操作
Java数组常见操作 文章目录 Java数组常见操作 7.0 数组的遍历 1.使用foreach循环访问数组中每个元素. 2.使用简单的for循环(多层循环嵌套)来遍历数组. 7.1 数组长度 7.2 ...
- Java 数组转型和范型
今天写代码遇到一个奇怪的问题,代码结构如下: [java] view plaincopy print? ArrayList<String> list = new ArrayList< ...
- 1.1 Java数组简介:数组是什么?
在某些情况下,虽然可以使用单个变量来存储信息,但是如果需要存储的信息较多(例如存储 50 名学生的成绩),这时再依次创建变量声明并赋值显得非常麻烦. 随着处理的信息量越来越大,工作也就越来越烦琐,这时 ...
- java数组可扩展_[转载]Java数组扩容算法及Java对它的应用
Java数组扩容的原理 1)Java数组对象的大小是固定不变的,数组对象是不可扩容的. 2)利用数组复制方法可以变通的实现数组扩容. 3)System.arraycopy()可以复制数组. 4)Arr ...
最新文章
- 基于 Python 的 8 种常用抽样方法
- 处理器后面的字母含义_电脑天天用,但CPU后缀的一个字母你知道代表这什么吗?...
- 疾风之刃鸿蒙炸裂,疾风之刃二周年版本12月1日上线_疾风之刃天武僧二觉率先开放_游戏堡...
- 机器学习入门---------numpy
- 观察者模式在android网络监控下的运用
- 学习Selenium 自动化从一张藏宝图开始
- 2005年1月8日——最伤心的一天
- 联合哈佛大学,Google 要用人工智能来预测地震余震
- Java之面试基础知识学习笔记
- java正则表达式yyyymmdd_java验证日期yyyyMMdd正则表达式,
- R 相关与相关性的显著性检验
- 联想拯救者Legion Y7000P 2020款安装ubuntu16.04 解决WIFI 显卡 cuda10.2)
- 什么是磁盘?磁盘的组成?接口和分区?
- 最后采用加权求和的方式得到样本的_一种婴幼儿视力自动检测方法与流程
- 大学生必看:基础IT技术文章300篇大合集!【包含信息/编码、IP/组网、程序逻辑、Web基础等】
- 为什么自动驾驶遇瓶颈,但自动代客泊车却很热?
- java故事之致敬坚持梦想的人
- 120帧手机动态壁纸_星空陨石动态壁纸手机版下载-星空陨石动态壁纸app安卓版下载v1.7最新版...
- web前端:img标签alt属性什么情况留空?
- html5 移动页面,html5入门到精通,移动设备的html5页面布局
热门文章
- html判断sql没结果,SQL存储过程测试(8)——当待测存储过程没有返回值的时候 如何判断测试结果是否通过...
- python解密m3u8播放_Python3 通过m3u8连接获取完整媒体文件(附全网视频VIP观看方法)...
- maxvalue mysql自动分区_深入解析MySQL分区(Partition)功能
- VS2017离线下载 -- 如何让VS2017不占用C盘
- 开源一套基于 React Naitve 的业务驱动型 UI 组件库:react-native-atlas
- Net设计模式实例之建造者模式(Builder Pattern)(1)
- Java 经典习题-初学
- Fenzo:来自Netflix基于Java语言的Mesos调度器
- VirtualBox centos下设置共享文件夹
- Windows8中pid为4的system进程占用80端口的解决办法