我曾经参加过几次编程比赛,但是当时用的是c语言,现在学习了java,打算专攻java组,故以此整理。

数组无论在哪里都必不可少。

一.数组的拷贝:

使用Arrays类的copyOf方法:

1.将一个数组中的所有值拷贝到另一个里面:

int[] copiedLuckyNumber=Arrays.copyOf(luckyNumbers,luckyNumbers.length);

2.数组的扩容:

luckyNumbers=Arrays.copyOf(luckyNumbers,2*luckyNumbers.length);

如果数组元素是数值型的,那么多余元素将被赋值为0,如果数组元素是布尔型的,则将赋值为false,相反如果长度小于原始数组,只拷贝最前面的数据元素。

有了这方法就不用写个循环就能得到原函数了。

3.数组的截取:

luckyNumbers=Arrays.copyOfRange(luckyNumbers,int start,int end);

截取数组中的一段,start:起始下标(包含这个值)end:(不包含这个值)如果end超过数组的size多余的位置为0或者false

二.数组排序:

最重要的是数组里面的排序(终于可以不用写快速排序了)

Arrays.sort(yourArrays);

这个sort方法使用了优化的快速排序,效率比较高。

排序后数组中的值会按照从小到大。

三.数组的查找

数组中自带了二分搜索的方法

static int binarySearch(type[] a,type v);
static int binarySearch(type[] a,int start,int end,type v);

参数:a 类型为基本类型

   start:起始下标(包含这个值)

   end:(不包含这个值)

   v 同a的数据元素类型相同的值

 四.不规则数组(略微不那么重要)

比如:

1

1  1

1  2  1

1  3  3  1

1  4  6  4  1

1  5  10  10  5  1

先分配行:

int[][] odds=new int[MAX+1][]

分配这些行:

for(int n=0;n<MAX;n++)

  odds[n]=new int[n+1];

五.数组的转换

1.int型数组转为字符串

 int[] arr = new int[]{1,2,3};
String s = Arrays.toString(arr);

整理自:核心技术卷一

最新文章

  1. 关于linux,我们应该学什么?
  2. Android开发自学笔记(Android Studio)&mdash;4.5 ProgressBar及其子类
  3. [转]显卡帝揭秘3D游戏画质特效
  4. 自适应滤波原理及simulink
  5. 5分钟 wamp下php phpmaile发送qq邮件 2015最新方法说明
  6. JS轮播图
  7. 编译LFS
  8. Qt中如何禁掉所有UI操作以及注意事项(处理各个widget的eventFilter这一层,但是感觉不好,为什么不使用QApplication呢)
  9. 程序启动读取和关闭时保存应用程序设置(QSettings)
  10. DOS批处理的字符串功能
  11. windows 8以上找回开始菜单
  12. IntelliJ IDEA 2017 注册方法
  13. Java 包装类Integer的值比较
  14. Photoshop入门教程图解版
  15. Gradle创建项目(IntelliJ IDEA)
  16. Orleans框架简单示范
  17. dubbo请求报文实例
  18. javascript中return function与return function()的区别
  19. python pymssql 连接数据库
  20. 【ASP.NET 进阶】判断访问网站的客户端是PC还是手机

热门文章

  1. 面试前必须要知道的Redis面试题
  2. 服务端预渲染之Nuxt (使用篇)
  3. Sql 优化解决方案
  4. C++对象生存期&amp;&amp;static
  5. css控制UL LI 的样式详解(推荐)
  6. Sharepoint模态窗体(实战)
  7. SqlServer中用SQL语句附加数据库及修改数据库逻辑文件名
  8. mysql建数据库的字符集与排序规则
  9. Linux如何查看与测试磁盘IO性能
  10. Kafka面试题