经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Java » 查看文章
【Java】数组知识回顾
来源:cnblogs  作者:黄大管  时间:2018/11/5 11:13:38  对本文有异议
  1. package another;
  2.  
  3. import java.util.Arrays;
  4. import java.util.List;
  5.  
  6. /**
  7. * 数组知识回顾
  8. * @author ChristineBassoon
  9. */
  10. public class Array {
  11. public static void main(String[] args) {
  12. //1. 新建数组的三种方式
  13. int[] arr1 = new int[3];
  14. int[] arr2 = {3,2,4,1};
  15. int[] arr3 = new int[]{5,7,9,0,3,5};
  16. //填充数组
  17. Arrays.fill(arr1, 10);//[10,10,10]
  18. //2. 数组元素默认值
  19. int[] arr_int = new int[3];//[0,0,0]
  20. String[] arr_str = new String[3];//[null,null,null]
  21. //3. 输出数组内容,如:[0,0,0,0]
  22. Arrays.toString(arr1);
  23. /*4. 数组自动排序(从小到大)
  24. * 一、 数组全排序 Arrays.sort(T[])
  25. * 二、 特定位置排序 Arrays.sort(T[], fromIndex, toIndex);
  26. */
  27. Arrays.sort(arr2);//[1,2,3,4]
  28. Arrays.sort(arr3,1,3);//只排序下标1-3的元素 [5,0,7,9,3,5]
  29. //5. 数组扩容、复制等————基于方法System.arraycopy(src, srcPos, dest, destPos, length);
  30. /*
  31. * (1) 扩容
  32. * Arrays.copyOf(original, newLength)
  33. * 扩充的元素加至原序列末尾
  34. */
  35. int[] arr4 = Arrays.copyOf(arr2, arr2.length+2);//[1,2,3,4,0,0]
  36. /*
  37. * (2) 缩容
  38. * Arrays.copyOf(original, newLength)
  39. * 根据指定长度,只保留原数组的头部
  40. *
  41. */
  42. int[] arr5 = Arrays.copyOf(arr2, 2);// [1,2]
  43. /*
  44. * (3) 截取(同数组中)
  45. * Arrays.copyOfRange(original, from, to)
  46. * 范围为[from,to),超出则抛IllegalArgumentException异常
  47. */
  48. int[] arr6 = Arrays.copyOfRange(arr2, 1, 3);//[2,3]
  49. /*
  50. * 用外部数组元素替换本数组指定位置
  51. * System.arraycopy(src, srcPos, dest, destPos, length); length表示需要复制的元素个数
  52. */
  53. String[] t1 = {"a","b","c","d"};
  54. String[] t2 = {"Apple","Boy","C","D"};
  55. System.arraycopy(t1, 1, t2, 2, 1);
  56. System.out.println(Arrays.toString(t2));//[Apple, Boy, b, D]
  57. //数组转换为List类型
  58. List list = Arrays.asList(arr2);
  59.  
  60. }
  61. }
  62.  
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号