java从入门到放弃06

数组

一。一维数组的声明和初始化
声明方式:

	String[] names;
	int age[];

静态初始化:初始化和赋值同时进行

	names = new String[]{"aa","cc"};
	//下面的声明和初始化不能分开进行
	String[] ps = {"aa","cc"};

动态初始化:初始化和赋值分开进行

	String[] ps = new String[3]; //3指的是数组的长度

注意:无论是静态初始化还是动态初始化数组一旦创建成功长度不可变。

二. 调用数组中的元素 : 通过索引值调用数组中的元素。索引值(下角标)是从0开始到(数组的长度-1)
int[] numbers = {1,2,3,4,5};

取值:

	int n = numbers[0];

赋值:

	numbers[0] = 100;

三. 数组的属性 – length(数组的长度)
String[] persons = {“小苍”,“小波”,“小饭”};

int len = persons.length;

四. 数组的遍历 : 根据数组的索引值进行遍历
String[] persons = {“小苍”,“小波”,“小饭”};

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

	System.out.println(persons[i]);

}
五. 数组元素的默认值
byte short int long -> 0
float double -> 0.0
char -> \u0000
boolean -> false
引用数据类型(数组,接口,类) -> null

案例1:

package com.atguigu.java;

/**
	数组 :相同数据类型的组合
	
	说明:
		1.数组是引用数据类型
		2.数组中的元素可以是基本数据类型也可以是引用数据类型。
 */
public class ArrayTest {

	public static void main(String[] args) {
		//1.数组的声明和初始化
		String[]  names;   //建议使用第一种声明类型
		int age[];
		//初始化
		//①静态初始化 :初始化和赋值同时进行
		names = new String[]{
  "小泽老师","小苍老师","小波老师","小泷老师"};
		//下面的方式:声明和初始化不能分开写
		int[] score  = {
  1,20,100,90};
		//②动态初始化 :初始化和赋值分开进行(先不放数据)
		age = new int[5];  //5指的是数组的长度(可以放几个元素)
		
		
		//2.获取数组中的元素:通过使用数组的下角标(索引值)来获取
		//下角标(索引值)是从0开始的到数组的长度 - 1
		//获取数组中的数据:
		String name = names[1]; //用name承接取出来的值
		System.out.println(name);
		//给数组中的元素赋值
		age[0] = 1000;
		System.out.println(age[0]);
		
		
		//3.数组的属性 :length - 数组的长度
		int len = age.length;
		System.out.println(len);
		System.out.println(names.length);
		
		
		//4.遍历数组中的所有元素
		for(int i = 0; i < names.length; i++){
  //0 ~  3
			System.out.println(names[i]);
		}
		
		System.out.println("---------------------------------------");
		
		//5.数组元素的默认值
		/*
		 * byte,short,int,long -> 0
		 * 
		 * float,double -> 0.0
		 * 
		 * char -> \u0000
		 * 
		 * boolean ->  false
		 * 
		 * 
		 * 引用数据类型 :null
		 * 
		 */
		byte[] b = new byte[2];
		System.out.println(b[0]);
		System.out.println(age[2]);
		boolean[] bs = new boolean[2];
		System.out.println(bs[0]);
		char[] cs = new char[2];
		System.out.println("ddd"+ cs[0] + "acc");
		String[] str = new String[2];
		System.out.println(str[0]);
		
	}
}

案例2:一维数组的内存解析

在这里插入图片描述

package com.atguigu.java;

/**
 * 一维数组的内存解析

 */
public class ArrayTest2 {
   

	public static void main(String[] args) {
   
		
		String[] names = new String[3];
		names[0] = "吴京";
		names[2] = "章子怡";
		
		String[] names2 = names;
		names2[1] = "志玲";
		
		names2 = new String[3];
		
		for(int i = 0; i < names.length; i++){
   
			System.out.println(names[i]);
		}
		
		System.out.println("-------------names2----------------");
		
		for(int i = 0; i < names2.length; i++){
   
			System.out.println(names2[i]);
		}
	}
}

练习1:

package com.atguigu.exer;

/**
	需求:创建一个char类型的26个元素的数组,分别 放置'A'-'Z‘。
	使用for循环访问所有元素并打印出来。
	提示:char类型数据运算 'A'+1 -> 'B','0'+1 -> ‘1‘

 */
public class ExerTest1 {
   
	public static void main(String[] args) {
   
		//创建一个数组
		char[] cs = new char[26];
		char c = 'A';
		//使用循环赋值
		for (int i = 0; i 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值