赞
踩
1.数组的概念:相同数据类型元素(数据)的一个序列或者有序集合。
2.数组的特性:
元素的数据类型相同;
元素是有序的,指数组下标有序;
数组长度是固定,定义数组是指定长度。
3.定义数组:
数组的声明:
类型[] 变量名;类型 变量名 [];类型 []变量名;
数组的初始化:
静态初始化:
类型[] 数组名={数组元素,数组元素,...};
动态初始化:
类型[] 数组名=new 类型[长度];数组中存在的元素是对应类型的初始值
类型[] 数组名=new 类型[]{数组元素,数组元素,......};
- //三种声明数组的方式
- /*int[] array1;
- int array2[];
- int []array3;*/
- //初始化,创建数组
- int[] array1={1,2,3,4};
- int[] array2=new int[5];
- int[] array3=new int[]{5,6,8,9};
元素的获取与修改:
数组下标:从0开始到数组长-1;
获取数组元素:数组名[元素对应下标];
数组元素赋值:数组名[下标]=值;
数组的长度:固定;在创建数组时必须确定数组的长度;
获取数组长度:数组名.length
- //获取数组元素的值
- int i1=array1[0];
- int i2=array2[0];
- int i3=array3[array3.length-1];
- System.out.println("i1="+i1+" i2="+i2+" i3="+i3);
- //循环修改数组的元素
- for (int i = 0; i <array2.length ; i++) {
- array2[i]=2*i+1;//赋值奇数
- System.out.println(array2[i]);
- }
- //循环输出for..each 循环
- for (int i:array2){
- System.out.print(i+" ");
- }
多维数组:
二维数组:特殊的一维数组,该数组中的元素也是一个数组
二维数组的声明:
例:int[][] 变量名;
int 变量名 [][];
int [][]变量名;
int[] []变量名;
int[] 变量名[];
int []变量名[];//掌握一种即可
- int[][] arr1;
- int arr2[][];
- int [][]arr3;
- int[] arr4[];
- int []arr5[];
- int[] []arr6;
数组初始化:
静态初始化:
类型 变量名 [][] = { {元素,元素,...},{元素,元素,...},{元素,元素,...}... }注意:每一个元素数组不一定要有
相同长度。
动态初始化:
类型 变量名 [][]=new 类型[length][length]
类型 变量名 [][]=new 类型[length][]
类型 变量名 [][]=new 类型[][]{{元素,元素,...},{元素,元素,...},{元素,元素,...}...}
数组元素的获取和赋值:
获取元素:数组名[下标1][下标2]
下标1:二维数组的下标
下标2:元素数组的下标
赋值:数组名 [下标1][下标2]=值
- int [][]arr1={{10},{16,5,56},{30,300,3}};//静态
- //动态,二维长度必要,元素数组长度不必要
- int arr2[][]=new int[3][3];
- int arr3[][]=new int[3][];
- int arr4[][]=new int[][]{{10},{16,5,56},{30,300,3}};
- int a1=arr1[0][0];
- int a2=arr2[0][0];
- int a4=arr4[0][0];
- System.out.println("a1="+a1);
- System.out.println("a2="+a2);
- //System.out.println("a3="+a3);
- System.out.println("a4="+a4);
- int [][]ary=new int[3][3];//初始化
- ary[0][0]=1;//赋值第一个元素,即二维数组第一个数组的第一个元素
- ary[1][1]=2;
- ary[2][2]=3;
- //循环输出二维数组
- for (int i = 0; i <ary.length ; i++) {
- for (int j = 0; j <ary.length ; j++) {
- System.out.print(ary[i][j]+"\t");
- }
- System.out.println();
- }
- //foreach 遍历取出
- for (int array[]:ary) {
- for (int i:array) {
- System.out.print(i+"\t");
- }
- System.out.println();
- }

- char [][]chrArr=new char[3][];//初始化,只固定二维数组长度
- chrArr[0]=new char[1];
- chrArr[1]=new char[2];
- chrArr[2]=new char[3];
- System.out.println((int)chrArr[1][0]);
- chrArr[0][0]='a';
- chrArr[1][1]='b';
- chrArr[2][2]='c';
- for (char []subArr:chrArr) {//foreach
- for (int i = 0; i <subArr.length ; i++) {
- System.out.print(subArr[i]+"1 ");//输出每个一维数组
- }
- for (char el:subArr) {
- System.out.print(el+" ");
- }
- System.out.println();
- }

字符串:
什么是字符串?
由n(n{0..n})个字符组成的序列。
定义字符串:
String 变量名 = " ";
String 变量名 = new String(" ");
String 变量名 = new String(字符串数组);
字符串长度:
length()方法获得字符串长度;例:字符串变量名.length();
提取字符串中的某个字符:
charAt(下标);//提取字符串中的字符,下标从0开始;
注意:数组获取长度和字符串获取长度的区别?
字符串通过length()方法获取长度,数组通过length属性获长度取。
public class TestString { public static void main(String []args){ //定义字符串 String str1="abc"; String str2=new String("ABC"); char[] chars={'H','e','l','l','o','!'}; String str3=new String(chars); System.out.println("str1="+str1+"\nstr2="+str2+"\nstr3="+str3); //获取长度 int s1L=str1.length(); System.out.println("strl的长度:"+s1L); //提取指定下标字符 char chr=str3.charAt(3);//从0开始 System.out.println("str3中第4ge字符"+chr); //字符串转换成字符数组 char[] c2=str2.toCharArray(); System.out.println(c2[1]); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。