------- android培训、java培训、期待与您交流! ----------
class arraydemo //数组 就是一个将相同数据类型数据装在一起的容器 //它的好处是可以将这些数据元素从0开始编号 方便对其操作 { public static void main(String[] args) { /* 格式1:元素类型[] 数组名= new 元素类型[元素个数或数组长度]; 示例 : int [] arr=new int [5]; //new用于在内存中产生一个数据实体 */ //需求 想定义一个可以存储3个数据的容器 int [] x = new int [3]; //不要丢new 注意x是数组类型 现在就要学习它了 /*x[0] = 59 ;不能写成int x[0] =59 上面已经int了 不要丢了; 此时 打印角标为0的元素的值时已经变成59了*/ x = null; /*不能写成x[]=null;这样是错误的 直接是x = null 此时 若 下边仍有"System.out.println(x[0]);" 就会报错 因为此时 堆内存没人使用 已经成为垃圾了*/ /* 数据类型分为 基本数据类型 和 引用数据类型 基本数据类型: 1.数值型 (1)整数类型(byte, short, int, long) (2)浮点类型(float, double) 2.字符型(char) 3.布尔型(boolean) 引用数据类型 1.类(class) 2.接口(interface) 3.数组( [ ] ) 整数默认:int 小数默认:double Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了 不同大小的内存空间 栈内存特点 数据在使用完毕后会自动释放空间 所以多个函数 都用x y 做变量也可以 局部变量都是定义在栈内存中 局部变量:定义在方法上的变量 定义在方法的参数上的变量 定义在for循环里面的变量都 是局部变量 堆内存都是实体 实体包括数组和对象 数组也能称为对象 堆内存特点: (结合视频的截图看) 1.堆内存里的每一个实体都有对应的位置位置是通过二进制的地址值来标识的 数组在内存中存放的时候 总有一个起始位置 为了简便 我们用16进制来表示 这些位置 当被栈内存使用的时候 只是引用了堆内存中的地址位置 2.堆内存中的实体是为了封装数据的 堆内存中的数据都有默认的初始化值 不赋值的情况下 都有默认值 具体值根据数组中元素的类型不同而确定 比如 下边的"System.out.println(x[0]);//换成[1]结果也是0" 就说明int型的默 认值是0 double 是0.0 float 是0.0F boolean 是false 引用是null 字符串也是null 3.当x=null时 堆内存就没人使用了 此时虚拟机就视此为垃圾 垃圾并不会被立 即清除 而是会不定时地启动垃圾回收机制 来清除无用的堆内存 int [] x = new int [3]; 中的int x 在栈内存里 而后面的new数组则存放在堆内存里 */ //如何打印数组中角标为0的元素的值 //System.out.println(x[0]);//换成[1]结果也是0 (见上面堆内存特点2) /* java的垃圾回收机制 java本身是成长制c++语言 它优化了c++中的一些特性 而变得更加简单易用 尤其是在内存这 块 c++的特点(或说缺点)在于是我们写了好多程序 在运行的时候 在内存中开辟空间 当内存 中的实体比较多的时候 比较占用内存空间 哪一个实体不用了 就需要清除掉 以腾出空间存 放其他的数据 而c++的做法是 由程序员手动调用一个功能将内存中的数据进行清除 否则 随着 程序运行时间的变长 运行会越来越慢 而java中是由虚拟机自动通过垃圾回收机制 进行清理的(把实体清除掉) 不是定时的 */ System.out.println("--------------其他的就见图片了--------------"); } }
相关推荐
黑马程序员——Android移动开发源码
正在自学黑马程序员Java全套,目前只学了Javase,接下来是Javaweb,把自己整理的笔记分享一下。
黑马程序员 C语言提高课程配套课件 黑马程序员 C语言提高课程配套课件
黑马程序员Javaweb教材源代码,适合学习配套使用
黑马程序员,C++核心编程
《JavaWeb程序设计任务教程》一书源代码,中国工信出版社出版,黑马程序员编著,传智播客旗下高端教育品牌“黑马程序员”项目实战配套用书
黑马程序员c++配套课件 《轻松搞定c++语言》 黑马程序员c++配套课件 《轻松搞定c++语言》
Javaweb基础全课程笔记,黑马程序员上课笔记,主要涉及前端 jsp和servlet等
layui ajax 没有node.js功能都可用,高度类似。 黑马刘龙彬老师主讲的大事件项目,整体看完,给...最后,再次给黑马程序员和刘老师点个赞。 说明--ShowDoc https://www.showdoc.com.cn/escook?page_id=3707158761215217
黑马程序员入学面试题,复习必备,事半功倍。
本人参加黑马程序员考试的题目加上本人的解答!不是让谁作弊,因为题库的题目对每个人会有些许的变化。题库题目的难度很类似,就当是你参加模拟考试了!哈哈,附本人的详解的哦!
黑马程序员网上图书商城中的毕业设计资料,代码,数据库设计论文等
《JavaWeb程序开发进阶》-黑马程序员配套资源ppt。
《MySQL数据库原理、设计与应用》课后习题及答案 黑马程序员编著 答案都是正确的,因为是老师给的资源。 如果不想下载,也可以去我的博客看,一模一样的。 ...
黑马程序员JavaEE49期
Netty基础,用于学习Netty,参考黑马程序员的netty教程
月薪过万的入门必知知识,黑马程序员入学Java精华总结
黑马程序员入学考试题,共10道,资源中有代码和题目。
day03_List、Set、数据结构、Collections day04_Map,斗地主案例 day05_异常,线程 day06_线程、同步 day07_等待与唤醒案例、线程池、Lambda表达式 day08_File类、递归 day09_字节流、字符流 day10_缓冲流、转换流、...
含书签,可检索 01_Python基础 02_linux基础 03_python高级 04_linux系统编程 05_Web服务器案例课件 ...08_数据结构和算法 09_MySQL 10_mongo 11_redis 12_前端 13_django 14_爬虫 15_tornado 16_shell 17_微信公众号