1.什么是二维数组?有几种表达方式?分别是什么?

答:多维数组即数组的数组,即数组的元素也是数组。

例:int[] [] a = {{1},{1,2},{1,2,3}};

有三种方式

1).int [] [] a;  2).int [] a1 [];  3).int a2 [] [];

*强烈推荐用第1种,不容易混淆a的数据类型;

2.多维数组的创建过程是什么?

答:

例:int [] [] a = new int [2] [];

a[0] = {1,2,3};

a[1] = {4,5,6};

3.请举例说明多位数组的迭代

答:int [] [] b1 = new int [] [] {{1,2},{3,4}};

for(int i = 0;i < b1.length;i++){

for(int j = 0;j < b1[i].length;j++){

System.out.println(b1[i][j]);

}

}

4.如何进行数组的拷贝?并且举例说明

答:在JDK API的System类中,提供了一个数组拷贝的静态方法:

arraycopy(Object src,int srcPos, Object dest, int destPos, int

length)

从指定源数组中复制一个数组,复制从指定的位置开始,

到目标数组的指定位置结束。

例:int[] a = {10.100.1000};

int[] b = {20.200.2000.20000};

System.arraycopy(a,1,b,2,2);

for(int x : b){

System.out.println(x);

}

输出结果是:20 200 100 1000

5.数组有哪些特点?优点是什么?缺点是什么?

答:1).数组是引用数据类型

2).数组是存储相同数据类型的集合

3).数组的下标从0开始

*优点:1).越界检查 2).通用算法

*缺点:长度一经定义不能改变

6. 什么是值传递?值传递在基本数据类型和引用数据类型中有什么区别?

答:值传递的本质是赋值,是把实际参数赋值给形式

参数的过程。

*基本数据类型是值之间进行赋值。

*引用数据类型是虚拟地址之间进行赋值。

例:基本数据类型:传递的是值(value)的拷贝

public void add(int x){

x++;

System.out.println(“add()方法:x=” +x);

}

public static void main(String[] args){

TestPass pass = new TestPass();

int x = 100;

Pass.add(x);

System.out.println(“main()方法:x=” +x);

}

引用类型:传递的是引用(reference)

Public void test(PersonalAccount a){

a.deposit(2000);

System.out.println(“test 方法中a的余额=”+a.

getbalance);

}

public static void main(String[] args){

PersonalAccount a = new PersonalAccount(“3333”, “123”,1900);

TestByReference t = new TestByReference();

t.test(a);

System.out.println(“main 方法中a的余额=” + a.getBalance());

}

注意:

*基本数据类型在传递过程中形参改变实参不改变。

*引用类型在传递过程中形参改变实参也改变。

*虽然String,包装器类本身是引用数据类型,但是按基本数据类型的规则传递

Java中数组的概念的更多相关文章

  1. Java中数组的概念与特点

    数组概念: 数组其实也是一个容器,可以用来存储固定个数相同类型的数据数组的定义 数组中存储的数据叫做元素 特点: 1.数组是引用数据类型 2.数组的长度是固定的,也就是说可以存储固定个数的数据 3.数 ...

  2. JAVA中数组的基本概念与用法

    JAVA中数组的基本概念与用法 1. 数组的定义与特点 数组的一种引用数据类型 数组中可以同时存放多个数据,但是数据的类型必须统一 数组的长度在开始时就需要确定,在程序运行期间是不可改变的 虽然可以使 ...

  3. Java 中数组的内存分配

    Java 中数组的内存分配 1.Java 程序在运行时,需要在内存中分配空间.为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据和内存管理方式. 2.数组基本概念 数组是 ...

  4. Java中数组在内存中的存放原理?

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/yangyong0717/article/details/79165685Java中数组被实现为对象, ...

  5. java中数组的相关知识

      1. 2.数组的命名方法 1)int[]ages=new int[5]; 2) int[]ages; ages=new int[5]; 3)int[]ags={1,2,3,4,5}; 4)int[ ...

  6. Java中数组的特性

    转载:http://blog.csdn.net/zhangjg_blog/article/details/16116613 数组是基本上所有语言都会有的一种数据类型,它表示一组相同类型的数据的集合,具 ...

  7. 在java 中,数组与 List<T> 类型的相互转换

    在java中,数组与List<T> 之前进行互相转换,转换方法可总结为以下几种: 一. 将 数组转换成List<T> 1. 使用 Collections 的addAll 方法 ...

  8. Java中数组的初始化方式

    Java中数组的初始化方式    初始化方式有两种: 1.静态初始化:初始化时由程序猿显式指定每一个数组元素的初始值,由系统指定数组长度 2.动态初始化:初始化时由程序猿仅仅指定数组长度,由系统为数组 ...

  9. java中数组复制的两种方式

    在java中数组复制有两种方式: 一:System.arraycopy(原数组,开始copy的下标,存放copy内容的数组,开始存放的下标,需要copy的长度); 这个方法需要先创建一个空的存放cop ...

随机推荐

  1. 简单聊天室(java版)

    这是本人从其他地方学习到的关于聊天室的一个模本,我从中截取了一部分关于客户端和服务端通信的Socket的内容.希望对大家对socket有个了解,我写的这些代码可以实现两人或多人在多台电脑上实现简单的对 ...

  2. 运维开发工程师 面试题 shell编程

    1. 32位随机密码生成 cat /proc/sys/kernel/random/uuid | tr -d '-' 2.查看当前系统每个ip的tcp连接数 -n 强制显示IP地址 -t 显示TCP连接 ...

  3. Educational Codeforces Round 27 补题

    题目链接:http://codeforces.com/contest/845 A. Chess Tourney 水题,排序之后判断第n个元素和n+1个元素是不是想等就可以了. #include < ...

  4. Docker+Gogs搭建个人Git服务

    欢迎 经常使用Github的我,Github它功能强大,操作简单,不用FQ,所以大家会使用Github进行代码托管,但是,Github的私仓收费的,而且对于普通个人用户来说,价格也不便宜.很多人搭建自 ...

  5. shell之算数运算符、逻辑运算符、关系运算符、布尔运算符、文件测试运算符

    注意事项: (1)bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用: (2)完整的表达式要被 ` ` 包含,注意这个字符不是常用的单引号,在 Es ...

  6. 基于SSM框架的文件上传

    我整理了一下,这个办法在Servlet上应该也用得上.其实文件上传主要的问题是在于存储路径的拼接. 这里我是把东西存在Web项目的WebContent目录下的 下面贴一些代码 目标应该是这样一个格式 ...

  7. Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)

    准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796. ...

  8. Centos 7服务启动文件

    在Centos 7中,如果要编辑一个脚本服务文件,并使用systemd进行管理,则必须将服务文件命名为/etc/systemd/system/*.service. service unit文件中的选项 ...

  9. input标签新增属性

    <input   list='list_t' type="text" name='user' placeholder='请输入姓名' value="" / ...

  10. 错误:Warning: Attempt to present <UIAlertController: 0x7fd192806e20> on <ViewController: 0x7fd1928048d0> whose view is not in the window hierarchy!

    系统:mac OS  10.12 (16A323) Xcod:8.3.3 错误:Warning: Attempt to present <UIAlertController: 0x7fd1928 ...