Java入门(四)

一.IDEA

   IDEA全称IntelliJ IDEA,是用于Java语言开发的集成环境,它是业界公认的目前用于Java程序开发最好的工具。

集成环境:把代码编写,编译,执行,调试等多种功能综合到一起的开发工具。

二.IDEA项目结构介绍

project(项目、工程):淘宝、京东等网站都属于一个一个的项目,IDEA中就是一个一个的project。

module(模块):一个项目中可以存放多个模块,不同的模块存放不同的业务功能代码。

Package(包):一个模块中可存放多个包,使用包来管理类文件。

Class(类):在类中编写代码。

三.IDEA常用快捷键

    psvm+回车:快速生成main方法
sout+回车:快速生成输出语句
alt+1:打开或隐藏工程目录结构
alt+4:打开或隐藏控制台

Ctrl+alt+l :格式化代码

Alt+enter :代码修正提示(针对代码的错误,给出的解决方案)

Ctrl+d   :向下复制一行

Ctrl+x   :剪切当前行

Ctrl+shift+/  :批量加入多行注释,再按一次就是取消

Ctrl+/       :批量加入单行注释,再按一次就是取消

Alt+shift+”向上的箭头”:上移当前行

Alt+shift+”向下的箭头”:  下移当前行

四.IDEA操作模块

   对模块进行remove,只是在列表中删除了,在硬盘中还有。

五.数组

     1.数组的定义:数组是一种容器,用来存储同种数据类型的多个值。

                 理解:数组容器在存储数据的时候,需要结合数据类型考虑。

                 建议:容器的类型,和存储的数据类型保持一致。

     2.数组的定义格式:

                    格式一:数据类型 [] 变量名  

                    格式二:数据类型 变量名[]

     3.数组的动态初始化

       注:java中的数组必须先初始化,然后才能使用。

           所谓初始化:就是在内存中,为数组容器开辟空间,并将数据存入容器中的过程。

       动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。

                  数据类型 [] 变量名=new 数据类型[数组长度];

                  案例://通过new关键字创建了一个int类型的数组容器,该容器可以存储5int类型的整数,该容器被arr数组变量所记录.
int[] arr=new int[5];

                  注意:打印数组变量的时候,会打印出数字的内存地址。

                  比如,打印了arr,结果: [I@1b6d3586

                  @:分隔符

                  [ : 当前的空间是一个数组类型

                  I : 当前数组容器中所存储的数据类型

                  1b6d3586:十六进制内存地址

4.数组元素的访问

        格式:数组名[索引]

              索引:是数组中空间的编号

              索引的特征:从0开始

                          索引是连续的

                          索引逐一增加,每次加1

               索引的作用:访问数组容器中的空间位置。

                     注意:数组在创建完毕后,即使没有赋值,也可以取出,但取出的元素都是默认初始化值。

     5.Java中内存分配

             java程序在运行时,需要在内存中分配空间。为了提高运算效率,就对空间进行了不同区域的划分。每一片区域都有特定的处理数据方式和内存管理方式。

         寄存器:交给cpu去使用

         本地方法栈:调用操作系统相关资源

         栈内存:方法运行时,进入的内存;局部变量都存放于这块内存中。

         堆内存:new出来的内容都会进入堆内存,并且会存在地址值。

         方法区:字节码文件(.class文件)加载时进入的内存。

           注意:每new一次,在堆内存中,都是一块新的空间,堆内存中的空间地址不会出现重复的现象。

     数据类型    默认值

       整数       0

      浮点数      0.0

       布尔       false

       字符       空字符

     引用数据类型  null

注意:引用数据类型:引用、记录了地址值的变量,所对应的数据类型,就是引用数据类型。

     理解:数组类型的变量应该记录的是地址值。

 6.数组的静态初始化

         1. 静态初始化:初始化时,就可以指定数组要存储的元素,系统还会自动计算出该数组长度。

              格式:数据类型[]变量名=new 数据类型[]{数据1,数据2,数据3,......}; 

              简化格式:数据类型 [] 变量名={数据1,数据2,数据3,......};  

       7.静态初始化与动态初始化的区别对比

             静态初始化:手动指定数组元素,系统会根据元素个数,计算出数组的长度。(需求中已经明确了要操作的具体数据)

             动态初始化:手动指定数组长度,由系统给出默认初始化值。 (只明确元素个数,不明确具体数值,推荐使用动态初始化)

       8.数组操作的两个常见问题

            1.索引越界:访问了数组中不存在的索引,造成索引越界问题。案例如下:

               int [] arr=new int[3];
  System.out.println(arr[10]);

会报如下错误:

.ArrayIndexOutOfBoundsException(数组索引越界)

            2.空指针问题:访问的数组已经不再指向堆内存的数据,造成空指针异常。案例如下:

int [] arr=new int[3];
  arr=null;
  System.out.println(arr[2]);

会报如下错误:

NullPointerException(空指针异常)

注意:null(空值),引用数据类型的默认值,表示不指向任何有效的对象。

     9.数组常见操作  

           动态获取数组元素个数:数组名.length

                遍历通用格式:

                            int [] arr={....};

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

                              arr[i]

}

                  注意:遍历指的是取出数据的过程,不要局限的理解为,遍历就是打印。

            

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值