0,java命名规范
1、 项目名全部小写
2、 包名全部小写
3、 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。
如:public class MyFirstClass{}
4、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。
如:int index=0;
public void toString(){}
5、 常量名全部大写
如:public static final String GAME_COLOR=”RED”;
6、所有命名规则必须遵循以下规则:
1)、名称只能由字母、数字、下划线、$符号组成
2)、不能以数字开头
3)、名称不能使用JAVA中的关键字。
4)、坚决不允许出现中文及拼音命名。
1,组合赋值运算符
注:1.这里的等价仅限于变量不是对象时;
2.右移并赋值运算符解释应为:x>>=y;等价于 x=x>>y;
2,三元运算符
表达式:“()? :”。
()中进行二元运算
?在运算,就形成三元运算符
语法:条件表达式?表达式1:表达式2。
3,instanceof
作用:判断其左边对象是否为其右边类的实例,返回boolean类型的数据
举个例子:
String s = "I AM an Object!";
boolean isobject = s instanceof Object;
我们声明了一个String对象引用,指向一个String对象,然后用instanceof来测试它所指向的对象是否是Object类的一个实 例,显然,这是真的,所以返回true,也就是isobject的值为true。
4,foreach
作用:循环访问集合以获取所需信息,但不应用于更改集合内容以避免产生不可预知的副作用。
格式:
foreach(元素类型type 元素变量x : 遍历对象obj)
{
引用了x的java语句;
}
例子1:
public class Test {
public static void main(String[] args)
{
int[] a = {1,2,3};
for(int i : a)
System.out.print(i + ",");
}
}
例子2:遍历三维数组
使用 for语句遍历
public class Ransack {
public static void main(String[] args) {
int array[][][] = new int[][][]{ // 创建并初始化数组
{ { 1, 2, 3 }, { 4, 5, 6 } },
{ { 7, 8, 9 }, { 10, 11, 12 } },
{ { 13, 14, 15 }, { 16, 17, 18 } }
};
array[1][0][0] = 97; // 改变指定数组元素
for (int i = 0; i < array.length; i++) { // 遍历数组
for (int j = 0; j < array[0].length; j++) {
for (int k = 0; k < array[0][0].length; k++) {
System.out.print(array[i][j][k] + "\t");
}
System.out.println(); // 输出一维数组后换行
}
}
}
使用foreach语句遍历
public class ForEachRansack {
public static void main(String[] args) {
int array[][][] = new int[][][]{ // 创建并初始化数组
{ { 1, 2, 3 }, { 4, 5, 6 } },
{ { 7, 8, 9 }, { 10, 11, 12 } },
{ { 13, 14, 15 }, { 16, 17, 18 } }
};
for (int[][] is : array) { // 遍历数组
for (int[] is2 : is) {
for (int i : is2) {
System.out.print(i + "\t");
}
System.out.println(); // 输出一维数组后换行
}
}
}
}
5数值类型
a.java数据类型大小
整形数: byte 1个字节 int 4个字节
short 2个字节 long 8个字节
浮点数: float 4个字节 double 8个字节
字符型: char 2个字节
布尔型: bool 1个字节
b,java数据类型分类
Java中的数据类型分为引用数据类型和基本数据类型。
引用数据类型分3种:类,接口,数组;
基本数据类型又分布尔类型和数值类型;
布尔类型:boolean(逻辑型) trure or false默认是false;
数值类型分定点类型和浮点类型;
定点类型分整数类型和字符型;
c.Java数据类型在内存中的存储
1)基本数据类型的存储原理:所有的简单数据类型不存在“引用”的概念,基本数据类型都是直接存储在内存中的内存栈上的,数据本身的值就是存储在栈空间里面,而Java语言里面八种数据类型是这种存储模型;
2)引用类型的存储原理:引用类型继承于Object类(也是引用类型)都是按照Java里面存储对象的内存模型来进行数据存储的,使用Java内存堆和内存栈来进行这种类型的数据存储,简单地讲,“引用”是存储在有序的内存栈上的,而对象本身的值存储在内存堆上的;
区别:基本数据类型和引用类型的区别主要在于基本数据类型是分配在栈上的,而引用类型是分配在堆上的(需要java中的栈、堆概念)
实例:
例1:我们分析一下”==“和equals()的区别。
首先,我定以两个String对象
Stringa="abc";
Stringb="abc";
然后
if(a==b){
System.out.println("a==b");
}else{
System.out.println("a!=b");}
程序输出a!=b
原因:a和b的地址是不相同的,a==b比较的是两个变量的地址
例2:定义两个基本类型
int a=4;
int b=4;
if(a==b){System.out.println("a==b");}
else
{System.out.println("a!=b");}
输出:a==b
原因:==比较的是两个变量的内容
猜想:不论是基本数据类型还是引用类型,他们都会先在栈中分配一块内存,对于基本类型来说,这块区域包含的是基本类型的内容;而对于对象类型来说,这块区域包含的是指向真正内容的指针,真正的内容被手动的分配在堆上。
7.