Java 中的array数组总结之一
数组:是一个将同种类型的数据存储在存储单元中。
可以用三种方式声明数组:
1、数据类型 标识符[];
int mothDays[];
2、数据类型 标识符[] = new 数据类型[大小];
int mothDays[] =new int [12];
3、数据类型 标识符[] = {值1,值2,...值N};
int mothDays[] = {31,28,31,30,31,30,31,31,30,31,30,31};
备注:数据类型可以是基本数据类型,也可以是引用数据类型。
数组的赋值:
1、数据类型 标识符[] = {值1,值2,...值N};
int mothDays[] = {31,28,31,30,31,30,31,31,30,31,30,31};
2、数据类型 标识符[] =new 数据类型[]{值1,值2,...值N};
int mothDays[] =new int []{31,28,31,30,31,30,31,31,30,31,30,31};
3 、标识符[下标值] = 值N;
mothDays[2] = 28;
数组的遍历:
1、for(int i = 0; i<数组名.length; i++){
//遍历的操作执行语句
}
2、for(数据类型 迭代变量: 数组名){
//通过迭代变量操作;
}
使用API中的Arrays管理数组的排序、复制、查找、填充。
排序:
Arrays.sort[数组名]; //全部升序排序
Arrays.sort[数组名,下标值1,下标值2]; //部分排序
复制:
import java.util.Arrays;
public class ArraysCopy{
public static void main(String [] agrs){
int a []={1,3,5,7,6,4,2};
System.out.println("原数组:");
for(int temp: a){
System.out.print(temp+" ");
}
System.out.println();
int b[] = Arrays.copyOf(a,10);
int c[] = Arrays.copyOf(a,5);
int d[] = Arrays.copyOfRange(a,2,5);
int e[] = new int[3];
System.arraycopy(a,2,e,0,3);
System.out.print("b数组从a数组中复制的结果:");
for (int temp: b){
System.out.print(temp+" ");
}
System.out.println();
System.out.print("c数组从a数组中复制的结果:");
for (int temp: c){
System.out.print(temp+" ");
}
System.out.println();
System.out.print("d数组从a数组中复制的结果:");
for (int temp: d){
System.out.print(temp+" ");
}
System.out.println();
System.out.print("e数组从a数组中复制的结果:");
for (int temp: e){
System.out.print(temp+" ");
}
System.out.println();
}
}
结果:
原数组:
1 3 5 7 6 4 2
b数组从a数组中复制的结果:1 3 5 7 6 4 2 0 0 0
c数组从a数组中复制的结果:1 3 5 7 6
d数组从a数组中复制的结果:5 7 6
e数组从a数组中复制的结果:5 7 6
查找:Arrays中的方法。
binarySeacher(int a[], int key); //第一个参数被查找的数组,第二个参数是要查找的参数。
binarySeacher(int a[], int from, int to,int key);
填充:在数组赋值的时候使用到。
fill(int a[],int key); //第一个参数被填充的数组,第二个参数是要赋给每个数组的参数值。
fill(i nt a[],int from, int to,int key)
import java.util.Arrays;
public class ArraysFill{
public static void main(String [] agrs){
int a []=new int[5];
Arrays.fill(a,10);
System.out.print("a数组中填充赋值初始化的结果:");
for(int temp: a){
System.out.print(temp+" ");
}
System.out.println();
Arrays.fill(a,3,4,20);
System.out.print("a数组部分填充赋值的结果:");
for (int temp: a){
System.out.print(temp+" ");
}
System.out.println();
}
}
结果:
a数组中填充赋值初始化的结果:10 10 10 10 10
a数组部分填充赋值的结果:10 10 10 20 10
Java 中的array数组总结之一的更多相关文章
- Java中对Array数组的常用操作
目录: 声明数组: 初始化数组: 查看数组长度: 遍历数组: int数组转成string数组: 从array中创建arraylist: 数组中是否包含某一个值: 将数组转成set集合: 将数组转成li ...
- java 实现往oracle存储过程中传递array数组类型的参数
注:本文来源于 < java 实现往oracle存储过程中传递array数组类型的参数 >最近项目中遇到通过往存储过程传递数组参数的问题, 浪费了N多个小时,终于有点头绪. 具体的代码 ...
- 在Java中怎样把数组转换为ArrayList?
翻译自:How to Convert Array to ArrayList in Java? 本文分析了Stack Overflow上最热门的的一个问题的答案,提问者获得了很多声望点,使得他得到了在S ...
- Java中创建泛型数组
Java中创建泛型数组 使用泛型时,我想很多人肯定尝试过如下的代码,去创建一个泛型数组 T[] array = new T[]; 当我们写出这样的代码时编译器会报Cannot create a gen ...
- 了解PHP中的Array数组和foreach
1. 了解数组 PHP 中的数组实际上是一个有序映射.映射是一种把 values 关联到 keys 的类型.详细的解释可参见:PHP.net中的Array数组 . 2.例子:一般的数组 这里,我 ...
- JAVA中list,set,数组之间的转换详解
JAVA的list,set,数组之间的转换,主要是使用Apache Jakarta Commons Collections,具体的方法如下:import org.apache.commons.coll ...
- Java中List转换为数组,数组转List
今天写代码遇到一个奇怪的问题,具体代码不贴出了,写一个简化的版本.如下: ArrayList<String> list=new ArrayList<String>(); ...
- Java中的自定义数组队列
在Java中,作为所有数据结构中存储和获取速度最快的一种,数组凭借其这种简单易用的优势在各个方面都能大显神威.但是数组也有自身的局限性.数组的长度必须是固定的一旦定义之后就无法动态的更改,这就会造成这 ...
- Q:java中的泛型数组
对于java,其是不支持直接创建泛型数组的.当采用如下的方式去创建一个泛型数组时,其会出现错误,编译无法通过的情况. package other.jdk1_5; /** * 该类用于演示泛型数组的创 ...
随机推荐
- [Inno Setup]写入注册表时32位系统和64位系统的路由
昨天下午组内一位同事跟说,他想在Inno Setup的安装包中写入一个注册表.目标位置是HKLM:\Software\下面创建自己的注册表项.然后说尝试了好几次都不行, 但是往HKCU下面写入却是OK ...
- Spring cloud 超时配置总结
基准配置: eureka-server : 注册中心 端口号1000 service-A : 服务A端口号2000 service-B : 服务B 端口号3000 其中,B服务通过feign调用服务A ...
- javascript基础案例解析
学完了JavaScript基础部分,总结出一些基本案例,以备日后查看! 1.九九乘法口诀表:在控制台中输出九九乘法口诀表!代码如下: <!DOCTYPE html> <html> ...
- pythonday01计算机初步认识
1.计算机的初步认识 常见的操作系统: win:xp,win7,win8,win10,windows server linux:centos图形化界面差,ubuntu个人开发,图形界面好,redhat ...
- shell 提取文件名和目录名
转自http://blog.csdn.net/universe_hao/article/details/52640321 shell 提取文件名和目录名 在写shell脚本中,经常会有需要对路径和文件 ...
- 创建docker容器遇到的错误
1.问题截图 2.问题描述 出现该问题就是docker版本和系统版本不兼容导致的. 现在的系统版本和docker的版本如下: 3.问题解决 安装低版本的docker或者高版本的系统(Centos7.4 ...
- 汇总VSCode中比较好用的插件
使用vscode编辑器两年的时间,总结出前端一些比较方便的插件 1. Auto Close Tag 自动添加HTML / XML关闭标签 2. Auto Complete Tag 自动完成标签 3 A ...
- (三)c#Winform自定义控件-有图标的按钮
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...
- 「雕爷学编程」Arduino动手做(10)——敲击传感器模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- VR、AR、MR、CR 与 AI与SaaS、CRM、MRP与B2B、B2C、C2C、O2O、P2P
一.VR.AR.MR.CR VR ( Virtual Reality ),虚拟现实 AR(Augmented Reality),增强现实 MR(Mix Reality),混合现实 CR(Cinema ...