Java数组(int为例)
Java数组(int为例)
定义:相同数据类型的数据的组合,是一种引用类型,是一个对象,存在堆里。
数组初始化:int[] scores1 = new int[]{72,90,59};//静态初始化:在声明并初始化数组与给数组相应的元素赋值操作同时进行。
int scores2[] = new int[3];
scores2[0] = 72;
scores2[1] = 90;
scores2[2] = 59;
//动态初始化:在声明并初始化数组与给数组相应的元素赋值操作分开进行。
//声明数组的错误写法:
1)String[] names = new String[5]{"AA","BB","CC"};
2)int i[10];
3)int i = new int[];
注:不管是动态还是静态初始化数组,一定在创建的时候,就指明了数组的长度!
引用数组元素:通过数组的下角标引用。下角标从0开始,到n-1结束,n是数组的长度。
数组长度:通过.length调用
遍历数组:
for( int i = 0 ; i < scores.length ; I ++){
System.out.println( scores[i]);
}
数组元素的默认初始值:
byte short int long 初始值为0
float double 初始值为0.0
char 初始值为 空格
boolean 初始值为false
引用类型初始值为null
一维数组的写法:int[] arrs = new int[5];
arrs[0] = 5;
//int arrs[] = new int[5];
二维数组的写法:int [][] is = new int[3][];
int[][] is2 = {{1,2},{3,4},{5,6}};
数组常见异常:
- 数组下标越界异常:java.lang.ArrayIndexOutBoundsException
int[] i = new int[10];
i[0] = 0;
i[10] = 10;//超出数组下标值(下标值越界)
for( int j = 0 ; j < i.length ; j++){
System.out.println(i[j]);
}
2.空指针异常: NullPointerException
(1) boolean[] b =new boolean[3];
b = null;
System.out.println(b[0]);
(2) String[] str = new String[4];
str[3] = new String("AA");//str[3] = "AA";
System.out.println(str[3].toString());
(3) int[][] j = new int[3][];
j[2][0] = 12;
Arrays类:
binayeSearch: 二分搜索法,使用二进制搜索算法来搜索指定类型数组,以获得指定的值。
输出结果
输出结果为搜索内容在数组中的位置(从0开始)
输出结果
负数指的是该数应在该数组中的位置(从1开始)
Equals:用于比较两个相同类型的值,如果两个指定类型的值相等则返回true,否则返回false。
Fill:用于填充数组
将int[] arrs2 中的内容替换成3
输出结果
将int[] arrs2 中的第二位到第三位替换为9
**2指第二位,4指第四位,9为替换的内容
**2,4指从第二到第三位,而不是从第二位到第四位
输出结果
Sort:对数组中的内容进行排序(从0开始)
public static void sort(int[] a)
copyOf:向数组添加内容
输出结果
copyOfRange: 截取数组内容
截取第0到第3位内容
输出结果
Java数组(int为例)的更多相关文章
- 1.1使用java数组,并开始封装我们自己的数组
今天感冒了,全身酸软无力,啥样不想做,就来学习吧,此节我们从初步使用java中提供的数组,然后分析相关情况,过渡到封装我们自己的数组. 一.我们先来感受一下java提供的数组,以整型数组(int[]) ...
- Android java传递int类型数组给C
接着前面的文章<Android java传递int类型数据给C><Android java传递string类型数据给C>,继续实践 实现public native int[] ...
- 第5章 Java数组
1.什么是数组 数组可以想象成一个巨大的盒子,这个盒子里面存放的是同一个数据类型的数据 例如:int[] scores = {78,68,94,93}; 2.如何使用Java中的数组 2.1申明数组 ...
- Java 数组声明与初始化
引言 学习了好久的java,每次要写数组的声明和初始化代码,总是理不清.最近又碰到了一次这种情况.这次拿出<Thinking In Java>好好总结一翻. 数组声明 对于数组的声明其实都 ...
- Java数组的声明和遍历
Java 数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java 语言中提供的数组是用来存储固定大小的同类型元素. 你可以声明一个数组变量,如 n ...
- java数组集合元素的查找
java数组和集合的元素查找类似,下面以集合为例. 数组集合元素查找分为两类: 基本查找: 二分折半查找: 基本查找: 两种方式都是for循环来判断,一种通过索引值来判断,一种通过数组索引判断. 索引 ...
- Java 数组声明的几种方式
Java数组定义声明的几种方法: 1. 类型名称[] 变量名=new 类型名称[length]; 2.类型名称[] 变量名={?,?,?}; 3.类型名称[] 变量名=new 类型名称[]{?,?,? ...
- 有关JVM处理Java数组方法的思考
在Java中,获取数组的长度和String的长度是两种不同的方法,这引起了本文作者的一番思考.本文从JVM的角度,探讨了Java数组在JVM中是什么对象,有哪些成员,以及声明方法. 作者:jarfie ...
- 七、java数组
目录 一.一维数组 声明方式 数组对象的创建 元素为引用数据类型的数组 数组初始化 数组元素默认初始化 数组元素的引用 二.二维数组 概念 初始化 二维数组举例 三.数组的拷贝 四.练习 数组可以堪称 ...
随机推荐
- Linux LVM分区管理、扩展
一.LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写.LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它 ...
- 【POJ】2892 Tunnel Warfare
[算法]平衡树(treap) [题解]treap知识见数据结构 在POJ把语言从G++换成C++就过了……??? #include<cstdio> #include<algorith ...
- Morley's Theorem (计算几何基础+向量点积、叉积、旋转、夹角等+两直线的交点)
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...
- node遇到的一些坑,npm无反应,cordova安装以后显示不是内部或外部命令
1.输入npm -v 以后一直无反应 C:\Users\用户名 目录下找到 .npmrc文件,删除以后,执行npm -v顺利显示版本号 2.安装cordova以后一直报错,不是内部或外部命令也不是可运 ...
- Linux 入门记录:八、Linux 文件系统
一.文件系统 操作系统通过文件系统管理文件及数据,磁盘或分区需要创建文件系统之后,才能被操作系统所用,创建文件系统的过程又称之为格式化.没有文件系统的设备又称之为裸设备(raw),某些环境会需要裸设备 ...
- java===java基础学习(10)---对象构造
重载 如果多个方法有相同的名字,不同的参数,便产生了重载.编译器必须挑选出具体执行哪个方法,他通过用各个方法给出的参数类I型那个与特定方法调用所使用的值类型进行匹配来挑选出相应的方法.如果编译器找不到 ...
- monkey测试===关于monkey测试的介绍
https://www.cnblogs.com/lauren1003/p/6193277.html
- Django 国内最全教程
https://code.ziqiangxuetang.com/django/django-tutorial.html
- http状态码+http请求方式
一.http状态码 2开头 (请求成功)表示成功处理了请求的状态代码. 200 (成功) 服务器已成功处理了请求. 通常,这表示服务器提供了请求的网页. 201 (已创建) 请求成功并且服 ...
- JavaScript实现Fly Bird小游戏
1.分析页面结构,理清需求和功能 游戏有三个界面,分别是开始界面,游戏界面和游戏结束界面. 1.1 开始界面 start.gif 游戏的大背景 上下移动的游戏标题和翅膀摆动的小鸟 start 按钮,点 ...