• Java学习(三)


    在Java中,安全性一直是被放在很高的位置。

    在C/C++语言中,只有全局变量和宏会被初始化,局部变量均未被系统初始化,包括自己开辟的空间。这往往导致一些空间中的数据无法确定,从而产生运行异常。

    Java中所有初始定义的变量均被要求初始化,用户开用户开辟的空间会被系统初始化(置0或null)。

    下面介绍数组的创建、初始化和复制操作。

     1 package helloWorld;
     2 import java.util.Arrays;;
     3 
     4 public class Array {
     5     public void run()
     6     {
     7         /*
     8          * 数组的初始化
     9          */
    10         char[] a1={'1','2','3'};
    11         char[] b1=new char[3];
    12         char[] a2={'1','2','3'},b2=new char[4];
    13         char[] a3=new char[]{'1','2','3'};
    14         System.arraycopy(a1,0,b1,0,b1.length);
    15         System.out.println(b1);
    16         
    17         /*
    18          * 复制字符超过长度,会抛出异常
    19          */
    20 //        System.arraycopy(a1,0,b2,0,b2.length);
    21 //        System.out.println(b2);
    22         
    23         /*
    24          * 复制引用地址
    25          * 类型有bollean、byte、char、int、short、long、float、double
    26          */
    27         char[] ctemp=a1;
    28         System.out.println(ctemp.length);
    29         ctemp[0]='0';
    30         System.out.println(a1);
    31         
    32         a1[0]='1';
    33         
    34         
    35         
    36         b1=Arrays.copyOf(a1, a1.length);
    37         System.out.println(b1);
    38         
    39         /*
    40          * 表示从位置0开始,到第三个数为止
    41          * 类型有bollean、byte、char、int、short、long、float、double
    42          */
    43         char[] b3=new char[3];
    44         b3=Arrays.copyOfRange(a1, 0, 3);
    45         System.out.println(b3);
    46         
    47         b3=b1.clone();
    48         System.out.println(b3);
    49         
    50         
    51         char[] b4=b1.clone();//相当于char[] b4={'1','2','3'};
    52         b4[1]='0';
    53         System.out.println(b1);
    54     }
    55 
    56 }

    结果为:

    1 123
    2 3
    3 023
    4 123
    5 123
    6 123
    7 123

    多维数组

    在C/C++中,多维数组可以用如下方法表示

    1 int i[][]=new int[4][]{12345678};

    但在Java中,多维数组不能用上述方法,需要用如下方法表示

     1 /*
     2          * 多维数组
     3          */
     4         int arri[][] = new int[4][];
     5         arri[0]=new int[3];
     6         arri[1]=new int[3];
     7         arri[2]=new int[3];
     8         arri[3]=new int[3];
     9         
    10         int arrj[][] = new int[][]{{1,2},{4,5,6},{7,8}};
    11         
    12 
    13         int i = 0;
    14         int j = 0;
    15         int k = 0;
    16         int temp;
    17         // int n=0;
    18         //System.out.println(arri.length);//长度为4
    19         for (i = 0; i < arri.length; i++) {
    20             for (j = 0; j < arri[0].length; j++) {
    21                 arri[i][j] = (int) (Math.random() * 12) + 1;
    22                 System.out.print(arri[i][j] + " ");
    23             }
    24             System.out.println();
    25         }
    26 
    27         for (i = 0; i < arri.length ; i++)
    28             for (j = 0; j < arri[0].length; j++)
    29                 for (k = j + 1; k < arri[0].length; k++)
    30                     if (arri[i][j] > arri[i][k]) {
    31                         temp = arri[i][j];
    32                         arri[i][j] = arri[i][k];
    33                         arri[i][k] = temp;
    34                     }
    35         for (i = 0; i < arri.length; i++) {
    36             for (j = 0; j < arri[0].length; j++)
    37                 System.out.print(arri[i][j] + " ");
    38             System.out.println();
    39         }
  • 相关阅读:
    SharePoint 2013 通过HttpModule 管理视图权限
    SharePoint 2013 内容部署报错
    SharePoint 2013 日历视图兼容性问题
    SharePoint 2013 JavaScript 对象判断用户权限
    SharePoint 2013 PowerShell命令备份还原报错
    SharePoint 2013 修改表单认证登录页面
    SharePoint 2013 表单认证使用ASP.Net配置工具添加用户
    linux下永久添加静态路由
    CAN协议,系统结构和帧结构
    STM32串口的设置和库函数的介绍
  • 原文地址:https://www.cnblogs.com/2Bthebest1/p/8404782.html
Copyright © 2020-2023  润新知