1.数组:若干个相同数据类型元素按照一定顺序排列的集合
2.JAVA语言内存分为栈内存和堆内存
3.方法中的一些基本类型变量和对象的引用变量都在方法中
的栈内存中分配
4.堆内存用来存放new运算符创建的数组或对象,在堆中存放的内存
由java虚拟机的垃圾回收器来自动管理
5.在堆中创建一个数组或对象后,同时还在栈中定义一个特殊的变量,
让栈中的这个变量的取值等于数组或对象在堆内存中的首地址,栈中
的这个变量就成了 数组或对象的引用变量,引用变量实际上保存的是
数组或对象在堆内存的首地址(也称为对象的句柄),以后就可以
在程序中使用栈的引用变量来访问堆中的数组或对象
6.引用变量是普通的变量,定义时在栈中分配,引用变量在程序运行
到其作用域之外后被释放。而数组或对象本身在堆内存中分配,即使
程序运行到使用new运算符创建数组或对象的语句所在代码块之外,
数组或对象本身占据的内存也不会释放,数组或对象在引用变量没有
指向它时,会变成垃圾,不能再被使用,但依然占用内存空间不放
在随后一个不确定的时间被垃圾回收站收走(释放掉),这也是java
比较占内存的原因
7.数组特点:
1)数组是相同数据类型元素的集合
2)数组中的各元素是先后有序的,它们在内存中按照这个先后顺序
连续存放一起
3)数组元素用整个数组的名字和自己在数组中的顺序位置来表示。
例如,a[0]表示名字为a的数组中的第一个元素,a[1]表示数组中的
第二个元素,以此类推。
8.一维数组定义三步骤:
1)声明数组
2)分配空间
3)创建数组元素并赋值
数据类型 []数组名;
数组名 = new数据类型[个数];
9.举例子说明数组定义:
第一种:int []x;
x = new int[10];
第二种,声明数组时也可以同时分配空间:
数据类型 []数组名 =new 数据类型[个数]
int []a =new int[10]
10.数组的引用方式:数组名[下标]
下标可以是整型或整型表达式,如a[3+i].JAVA语言下标从0开始
与C/C++不同的是JAVA语言对数组元素要进行越界以确保安全性
11.对每个数组都有一个属性length指明它的长度
如x.lengt指出数组x所包含的元素个数
12.注意:Java程序中声明数组时,无论用何种方式定义数组,
都不能指定其长度。
13.foreach语句:只需要提供三个数据
1)元素类型
2)循环变量名字(用于存储连续的元素)
3)用于检测元素的数组
for(type element:array){
输出语句;
}
功能是每次从数组array中取出一个元素,自动赋给element,用户不用判断
是否超出了数组的长度
14.需要注意:element的类型必须是与数组array中元素的类型相同
15.二维数组声明和内存分配:
数据类型[][]数组名;
数组名=new数据类型[行数][列数];
或者数据类型[][]数组名=new 数据类型[行数][列数]
16.JAVA语言的二维数组不一定是规则的矩形
例如:int[][]x=new int[]
17.JAVA语言中的二维数组可以看成是多个一维数组
int [][]x=new int[3][]
数组x有三个元素,每个元素都是int[]类型的一维数组
18.如果数组是一个规则矩阵
在二维数组中如果想获得二维数组的行数,只要在数组后面添加一个.length属性即可
若想获得数组中某行元素的个数,则需在数组名和后加上该行的下标,再加上.length
属性
例如:x.length//计算数组的行数
x[0].length//计算数组x第一行元素个数
x[3].length//计算数组x第三行元素个数
19.注意:二维数组要求必须指向高层维数
int [][]array = new int[1][];
int [][]array = new int[2][5];
错误申请:int[][]array = new int [][5];
int[][]array = newint [][];
20.二维数组赋初值:数据类型[][]数组名 = {{第一行初值},
{第二行初值},
{第三行初值}
{第n行初值}}
21.程序中可以用到的字符串可以分为两大类:
1)创建之后不会做修改和变动的字符串变量
2)创建之后允许再做修改和变动的字符串变量
22.字符串变量创建:
String 变量名
变量名=new String("字符串");

四月十号java知识点的更多相关文章

  1. 学Android开发,入门语言java知识点

    学Android开发,入门语言java知识点 Android是一种以Linux为基础的开源码操作系统,主要使用于便携设备,而linux是用c语言和少量汇编语言写成的,如果你想研究Android,就去学 ...

  2. 给Java新手的一些建议----Java知识点归纳(Java基础部分)

    写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给 ...

  3. java知识点梳理

    网络搜索结果,出处不详,仅供参考 对于刚刚接触Java的人,java基础知识技术点繁多,那么gkstk小编为大家汇总最全java知识点如下,仅供大家参考学习! 1. JVM相关(包括了各个版本的特性) ...

  4. 自己整理的所有java知识点(不断迭代中)

    1. 自己整理的所有java知识点(不断迭代中) 画图工具注册 https://www.processon.com/i/599d35fae4b00d97d7f9bb17 1.1. Java整体知识架构 ...

  5. Java知识点-判断null、空字符串和空格

    Java知识点-判断null.空字符串和空格 // 判断headerKey是否为null,空字符串或者空格 if (headerKey != null && headerKey.len ...

  6. typora中文版官方免费快速下载以及Markdown的一些常用语法、Java知识点

    typora下载 链接:https://某度云盘的域名/s/1geD1APxnyV3gogYW3E08bQ 密码:8fdp 把某度云盘的域名进行替换 1.标题 # 标题1 ## 标题2 ### 标题3 ...

  7. 给Java新手的一些建议——Java知识点归纳(Java基础部分)

    原文出处:CSDN邓帅 写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些Java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行 ...

  8. 给Java新手的一些建议——Java知识点归纳(Java基础部分)

    写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给 ...

  9. Java知识点脑图

    做服务器开发有十几年了,其中大部分用到的都是Java服务器开发,从JDK1.4到现在的JDK1.8,从基本的Java Application到 J2EE(JBOSS,Glassfish),OSGI,到 ...

  10. 给Java新手的一些建议----Java知识点归纳(J2EE and Web 部分)

    J2EE(Java2 Enterprise Edition) 刚出现时一般会用于开发企业内部的应用系统,特别是web应用,所以渐渐,有些人就会把J2EE和web模式画上了等号.但是其实 J2EE 里面 ...

随机推荐

  1. 关于IllegalMonitorStateException异常的解释之一

    注意 在同步控制方法或同步控制块里调用wait(),notify()和notifyAll().如果在非同步控制方法里调用这些方法,程序能通过编译,但运行的时候,将得到IllegalMonitorSta ...

  2. Dubbo调用 Mybatis 实体类一对多时,报错

    添加fetchType="eager"属性 ,急加载 作为笔记,供个人参考

  3. python 编程找出矩阵中的幸运数字:说明,在一个给定的M*N的矩阵(矩阵中的取值0-1024,且各不相同),如果某一个元素的值在同一行中最小,并且在同一列中元素最大,那么该数字为幸运数字。

    假设给定矩阵如下: matrix=[[10,36,52], [33,24,88], [66,76,99]] 那么输出结果应为66(同时满足条件) 代码如下: arr=[[10,36,52], [33, ...

  4. 【JIRA】jira issue reindex

    参考文档: https://community.atlassian.com/t5/Marketplace-Apps-Integrations/Scriptrunner-Listener-Reindex ...

  5. 5.3dmax轴相关

    # 知识点: 转换为可编辑的样条线(spline) chamfer 切角 Fillet 圆角 车削命令 书柜案例2 样条线(从图形到多边形) 1.在平面视图中选择矩形并创建一个矩形,将矩形转化为可编辑 ...

  6. Oracle入门- 数据库操作相关脚本

    1. 创建表 1 CREATE TABLE SYS_NOTICE 2 ( 3 GUID CHAR(32) NOT NULL, 4 TITLE VARCHAR2(128) NOT NULL 5 ); 6 ...

  7. Matlab:4维、单目标、约束、粒子群优化算法

    % 主调用函数(求最大值) clc; clear; close all; % 初始化种群 N = 100; % 初始种群个数 D = 4; % 空间维数 iter = 50; % 迭代次数 x_lim ...

  8. 谷歌翻译不能用解决办法(谷歌翻译关闭后,如何继续使用Chrome浏览器的翻译功能?)

    1.查找 IP   虽然谷歌不再提供 translate.google.cn 网页版的服务了,但谷歌翻译的 API 服务还在. 只需要通过 hosts 重定向至国内服务器,即可恢复使用. 1.Ping ...

  9. SqlServer获取一周内每天的金额统计数据

    select datename(weekday,CAST([CompletedTime] AS date)) WeekNum, CAST([CompletedTime] AS date) AS 'Da ...

  10. 记一个快捷在线接口YAPI

    在线地址:http://192.168.252.152:3000 1.idea中file下setting中plugins搜索并加载插件YAPI 2.idea中的.idea中.misc.xml文件配置. ...