`
ayaoxinchao
  • 浏览: 80851 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

回顾java数组复制

阅读更多

在写这篇文章之前,也看了一些别人写的,基本上都是大同小异。文章是对java数组复制基础知识的回顾,算是作为学习笔记,供以后自己翻阅。

首先,简单想一下这个问题:为什么要复制数组?

我的个人理解:在我们在利用一个数组时,在每一次使用,我们都希望它的值是初始值。这时我们就要对数组进行复制,以达到原始数组值的安全性。


java数组复制大致分为3种方式:①for循环方式 ②clone方式 ③arrayCopy方式,以下分别用例子阐释

 

for循环方式:

int[] a = {1,2,3,4,5};
int[] b = new int[10];
		
for(int i=0; i<a.length; i++){
	b[i] = a[i];
}
		
for(int value:b){
	System.out.print(value);
}

 输出结果为:1234500000

 

clone方式:

int[] a = {1,2,3,4,5};
int[] b = a.clone();
		
b[0]=2;
for(int value:b){
	System.out.print(value);
}

System.out.println();	
for(int value:a){
	System.out.print(value);
}

 输出结果为:22345

                      12345

 

arrayCopy方式:

int[] a = {1,2,3,4,5};
int[] b = new int[10];
		
System.arraycopy(a, 2, b, 0, 3);
		
for(int value:b){
	System.out.print(value);
}

 输出结果为:3450000000

 

 

 

0
0
分享到:
评论
1 楼 Coder211 2013-01-30  
感觉你写的不完全。请参考这里。http://coder211.iteye.com/blog/1779646

相关推荐

    遇到的一些Java面试题回顾.docx

    Java 面试题回顾 本文对 Java 面试题进行了回顾,涵盖了 Java 语言基础、Web 开发、数据库、缓存、JavaScript 和 Linux 等多方面的内容,旨在帮助读者备战 Java 面试。 Java 语言基础 1. Java 中的 try-catch-...

    Thinking in Java 中文第四版+习题答案

    2.2.3 Java中的数组 2.3 绝对不要清除对象 2.3.1 作用域 2.3.2 对象的作用域 2.4 新建数据类型:类 2.4.1 字段和方法 2.5 方法、自变量和返回值 2.5.1 自变量列表 2.6 构建Java程序 2.6.1 名字的可见性 2.6.2 使用...

    JAVA课后题答案(全)

    分章节的结构使得查找特定主题的解题思路变得十分便捷,无论是对某一章内容的专项复习,还是对整个Java课程的全面回顾,都能有效提高学习效率。 首先,我们来看第1章,通常这一章会介绍Java的基础知识,如变量、...

    java 编程入门思考

    14.2.3 回顾Java Beans 14.3 堵塞 14.3.1 为何会堵塞 14.3.2 死锁 14.4 优先级 14.4.1 线程组 14.5 回顾runnable 14.5.1 过多的线程 14.6 总结 14.7 练习 第15章 网络编程 15.1 机器的标识 15.1.1 服务器和客户机 ...

    Java初学者入门教学

    14.2.3 回顾Java Beans 14.3 堵塞 14.3.1 为何会堵塞 14.3.2 死锁 14.4 优先级 14.4.1 线程组 14.5 回顾runnable 14.5.1 过多的线程 14.6 总结 14.7 练习 第15章 网络编程 15.1 机器的标识 15.1.1 服务器和客户机 ...

    java联想(中文)

    14.2.3 回顾Java Beans 14.3 堵塞 14.3.1 为何会堵塞 14.3.2 死锁 14.4 优先级 14.4.1 线程组 14.5 回顾runnable 14.5.1 过多的线程 14.6 总结 14.7 练习 第15章 网络编程 15.1 机器的标识 15.1.1 服务器和客户机 ...

    传智播客 java SE 5天公开课全部内容打包

    第四课 - IO.ppt: Java的IO系统允许程序进行输入输出操作,包括读写文件、流的概念、缓冲区、字符编码、文件复制等。这部分内容是处理数据输入输出的关键,尤其在处理大量数据或进行文件操作时必不可少。 第五课 - ...

    java作业答案

    - **数组操作**:如长度获取、元素修改、数组复制等。 - **数组排序**:使用Arrays类的sort()方法对数组进行升序或降序排列。 4. **集合**: - **List接口**:表示有序、可重复的元素集合,如ArrayList和...

    Java NIO 中英文版

    - Java NIO支持通道间的直接数据传输,例如可以从一个FileChannel直接将数据传输到SocketChannel,无需经过缓冲区,减少了数据复制的开销。 6. **异步I/O** - Java NIO还提供了异步I/O操作,通过...

    JAVA_Thinking in Java

    14.2.3 回顾Java Beans 14.3 堵塞 14.3.1 为何会堵塞 14.3.2 死锁 14.4 优先级 14.4.1 线程组 14.5 回顾runnable 14.5.1 过多的线程 14.6 总结 14.7 练习 第15章 网络编程 15.1 机器的标识 15.1.1 服务器和客户机 ...

    Data Structures & Algorithms in Java Second Edition amazon

    1. Java基础回顾:作者首先对Java语言进行简要回顾,确保读者对Java有基础的理解。这部分内容包括Java的基本数据类型、运算符、控制结构、类和对象等。 2. 数据结构基础:书中详细介绍了线性结构和非线性结构的基本...

    JAVA核心知识点整理.pdf

    文件《JAVA核心知识点整理.pdf》作为Java程序员面试准备资料,提供了一个全面的Java知识点回顾,涵盖JVM运行机制、多线程编程、集合框架、IO/NIO、类加载机制等内容。这些知识点对于应聘者理解Java技术栈、提升编程...

    Thinking in Java简体中文(全)

    14.2.3 回顾Java Beans 14.3 堵塞 14.3.1 为何会堵塞 14.3.2 死锁 14.4 优先级 14.4.1 线程组 14.5 回顾runnable 14.5.1 过多的线程 14.6 总结 14.7 练习 第15章 网络编程 15.1 机器的标识 15.1.1 服务器和客户机 ...

    java编程百例

    4. **数组**:Java中的数组是一组相同类型的元素集合,可以是一维、二维或多维数组,学习如何声明、初始化和操作数组至关重要。 5. **类与对象**:理解面向对象编程的核心,学习如何定义类,创建对象,并使用封装、...

    java试题txt版

    总之,这份Java试题虽然答案可能存在误差,但通过解答,我们可以系统地回顾和巩固Java的各个关键知识点,对个人技能的提升大有裨益。在实际学习过程中,建议结合权威教程、实战项目和在线资源,以全面提高Java编程...

    java SE第1次实验报告要求

    第4题可能涉及到数组的使用,如遍历数组并进行特定操作。在第2部分的题目中,你可能会遇到更复杂的编程任务,如设计一个简单的类或者实现多态性。 2. 报告的重点在于实验结果的展示,分析和总结,而不是展示源代码...

    学习java的一些小程序

    这些小程序可以帮助初学者建立扎实的编程基础,同时也适合有经验的开发者进行回顾和实践。 1. **Java基础知识** - 类与对象:Java是面向对象的语言,一切皆为对象。理解类的定义,构造器,以及对象的创建和使用至...

Global site tag (gtag.js) - Google Analytics