Java中数组的概念
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中数组的概念的更多相关文章
- Java中数组的概念与特点
数组概念: 数组其实也是一个容器,可以用来存储固定个数相同类型的数据数组的定义 数组中存储的数据叫做元素 特点: 1.数组是引用数据类型 2.数组的长度是固定的,也就是说可以存储固定个数的数据 3.数 ...
- JAVA中数组的基本概念与用法
JAVA中数组的基本概念与用法 1. 数组的定义与特点 数组的一种引用数据类型 数组中可以同时存放多个数据,但是数据的类型必须统一 数组的长度在开始时就需要确定,在程序运行期间是不可改变的 虽然可以使 ...
- Java 中数组的内存分配
Java 中数组的内存分配 1.Java 程序在运行时,需要在内存中分配空间.为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据和内存管理方式. 2.数组基本概念 数组是 ...
- Java中数组在内存中的存放原理?
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/yangyong0717/article/details/79165685Java中数组被实现为对象, ...
- 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[ ...
- Java中数组的特性
转载:http://blog.csdn.net/zhangjg_blog/article/details/16116613 数组是基本上所有语言都会有的一种数据类型,它表示一组相同类型的数据的集合,具 ...
- 在java 中,数组与 List<T> 类型的相互转换
在java中,数组与List<T> 之前进行互相转换,转换方法可总结为以下几种: 一. 将 数组转换成List<T> 1. 使用 Collections 的addAll 方法 ...
- Java中数组的初始化方式
Java中数组的初始化方式 初始化方式有两种: 1.静态初始化:初始化时由程序猿显式指定每一个数组元素的初始值,由系统指定数组长度 2.动态初始化:初始化时由程序猿仅仅指定数组长度,由系统为数组 ...
- java中数组复制的两种方式
在java中数组复制有两种方式: 一:System.arraycopy(原数组,开始copy的下标,存放copy内容的数组,开始存放的下标,需要copy的长度); 这个方法需要先创建一个空的存放cop ...
随机推荐
- servlet以及HTML中路径问题
路径问题: ①相对路径和绝对路径: 绝对路径:绝对路径是以/开头的路径! 相对于当前服务器的绝对路径:如果是服务器解析,那么/就代表当前服务器的绝对路径:http://localhost:8080 相 ...
- /etc/fstab最后3个字段详解
/etc/fstab文件的作用就是让挂载的信息在开启的时候生效: 磁盘分区 挂载目录 文件格式 访问方式 fs_dump fs_pass /dev/sdb1 /mnt ext4 defaults ...
- cms系统架构设计
本篇只包含已实现系统的部分设计,若后续有新需求再另行更新. 在线用户表 用户角色表 用户权限表 ……
- 深入解析JavaScript中的this关键字
如果问初学者js中什么东西比较难懂,很多回答会是this关键字.this在不同场景下所指向的对象不同,这就有一种扑朔迷离的感觉,放佛魔法一般神秘:this到底是什么?这里有四种绑定规则. 1. 默认绑 ...
- 原创:路由配置实践 两个局域网主机的互连 VM linux
又开始齐天大圣讲课的时间了 我相信网络是每个运维人员和开发人员必不可少要接触的 今天我们要讲的是在VM虚拟机中 我们三台虚拟机划分两个局域网 实现不同局域网的互联 也就是下面图中的AC通过B主机的 ...
- Wdatepicker日期控件的使用指南 (转)
Wdatepicker日期控件的使用指南 标签: inputclass语言functionstring正则表达式 2012-02-10 15:48 40826人阅读 评论(5) 收藏 举报 .embo ...
- JavaScript基础-流程控制-if
流程控制基本概念 默认情况下,程序的运行流程是这样的:运行程序后,系统会按书写从上至下顺序执行程序中的每一行代码,但是这并不能满足我们所有的开发需求 1.png 实际开发中, 我们需要根据不同的条件执 ...
- H5输入框实时记录文字个数
需求: 移动端用户反馈功能,有的用户反馈功能是有字数限制的,比如限制为200字 解决方法: 在项目中我们使用的Vue框架,所以可以直接进行绑定,代码如下 <section class=" ...
- 数据库面试技巧,通过JDBC展示自己专业性,摘自java web轻量级开发面试教程
这篇文章是我之前写的博文 数据库方面的面试技巧,如何从建表方面展示自己能力 和 面试技巧,如何通过索引说数据库优化能力,内容来自Java web轻量级开发面试教程是一个系列的,通过面试官的视角和大家分 ...
- sed修炼系列(一):花拳绣腿之入门篇
本文为花拳绣腿招式入门篇,主要目的是入门,为看懂sed修炼系列(二):武功心法做准备.虽然是入门篇,只介绍了基本工作机制以及一些选项和命令,但其中仍然包括了很多sed的工作机制细节.对比网上各sed相 ...