1. 程式人生 > >Java中二維數組的操作

Java中二維數組的操作

ocl 繼續 print nbsp ati sta 編寫 sys src

//1.二維數組的定義

//2.二維數組的內存空間

//3.不規則數組



技術分享

輸出要放在循環裏面,放在外面就報錯了

技術分享

打debug確定二維數組的關系

技術分享

技術分享

現在程序在7與8行進行循環

------------------------------------------------------------------------------------------------------------------------------------

然後經歷一個中間階段

技術分享

然後繼續

技術分享

一直到

技術分享

就結束了


二維數組內存結構

技術分享

不規則二維數組

  1. //1.二維數組的定義
  2. //2.二維數組的內存空間
  3. //3.不規則數組
  4. package me.array;
  5. public class Array2Demo{
  6. public static void main(String[] args){
  7. //創建和打印不規則二維數組
  8. int arr[ ][ ];
  9. arr=new int[3][];//現在說明為不規則數組
  10. arr[0]=new int[10];//arr[0]指向另一個一位數組
  11. arr[1]=new int[3];
  12. arr[2]=new int[4];
  13. //賦值
  14. for(int i=0;i<arr.length;i++){
  15. for(int j=0;j<arr[i].length;j++){
  16. arr[i][j]=j;
  17. }
  18. }
  19. //輸出
  20. for(int i=0;i<arr.length;i++){
  21. for(int j=0;j<arr[i].length;j++){
  22. System.out.print(arr[i][j]+" ");
  23. }
  24. System.out.println();
  25. }
  26. /*輸出結果:
  27. 0 1 2 3 4 5 6 7 8 9
  28. 0 1 2
  29. 0 1 2 3
  30. *///
  31. }
  32. }

[java] view plain copy print?
  1. //3.編寫一個方法,返回double型二維數組,數組通過解析字符串參數獲得。
  2. //如"1,2;3,4,5;6,7,8"
  3. //d[0,0]=1.0 d[0,1]=2.0 d[1,0]=3.0 ....
  4. package me.parser;
  5. public class TestString{
  6. public static void main(String[] args){
  7. //1.用字符串分解split(";")成三個字符串數組
  8. //2.再分解split(",")
  9. //聲明一個二維數組用來裝分解好的字符
  10. String s="1,2;3,4,5;6,7,8";
  11. //以split()方法 分解
  12. String[] sFirst=s.split(";");
  13. String[][] word=new String[sFirst.length][];
  14. int flag=0;
  15. for(int i=0;i<sFirst.length;i++){
  16. //打印出已經分開的
  17. //System.out.println(sFirst[i]);
  18. /*這條語句輸出
  19. 1,2
  20. 3,4,5
  21. 6,7,8
  22. *///接下來在按照 ,分開他們放入一個一維數組
  23. String[] sSecond=sFirst[i].split(",");
  24. //~ System.out.println(sSecond.length);
  25. //~ /*輸出:
  26. //~ 2
  27. //~ ---------------------------------
  28. //~ 3
  29. //~ ---------------------------------
  30. //~ 3
  31. //~ ---------------------------------
  32. //~ *///說明每次sSencond這個一維數組的長度不同
  33. word[i]=new String[sSecond.length];//這步確定行不規則數組的每行長度
  34. //為這個數組賦值
  35. for(int j=0;j<sSecond.length;j++){
  36. word[i][j]=sSecond[j];
  37. }
  38. System.out.println("---------------這是第"+(i+1)+"次循環-------------------");
  39. }
  40. //輸出二維數組
  41. System.out.println("輸出二維數組-------------------");
  42. for(int i=0;i<word.length;i++){
  43. for(int j=0;j<word[i].length;j++){
  44. System.out.print(word[i][j]+" ");
  45. }
  46. System.out.println();
  47. }
  48. /*結果:
  49. ---------------這是第1次循環-------------------
  50. ---------------這是第2次循環-------------------
  51. ---------------這是第3次循環-------------------
  52. 輸出二維數組-------------------
  53. 1 2
  54. 3 4 5
  55. 6 7 8
  56. 輸出二維數組-------------------
  57. *///
  58. }
  59. }

Java中二維數組的操作