1.关于类的定义
在一个*.java文件中可以有多个class定义,但是只能有一个public class定义
public class 定义:类名必须与文件名保持一致,否则编译不通过
class 定义:类名可以与文件名不一致,在一个.java文件中,可以有多个class的定义,编译之后分为不同的.class文件。
2.系统输出
System.out.println(输出内容); 输出后换行
System.out.print(输出内容); 输出后不换行
3.int型数据可以很方便的取得该数据类型的最大值和最小值
Integer.MAX_VALUE;
Integer.MIN_VALUE;
4.自动类型转换与强制类型转换
自动类型转换:范围小的数自动转换为范围大的数
强制类型转换:范围大的数转换为范围小的数
byte short int long float double
float(-3.4E38~3.4E38)
double(-1.7E308~1.7E308)
5.数据类型
Java的数据类型可以基本数据类型与引用数据类型两类
基本数据类型:数值型、字符型、布尔型
引用数据类型:类、接口、数组
字符串本身不属于java的基本数据类型,它属于String类,但是这个类使用起来可以像基本数据类型那样方便操作。
基本数据类型不牵扯到内存开辟问题,引用型数据类型牵扯到内存开辟
引用型数据类型的实例化操作,永远都必须使用关键字new进行内存分配后才可以使用。
6.char与int之间是可以相互转换的
7.Java使用的是unicode编码,而不是ascii编码,C语言中使用的是ascii编码,unicode是一种使用十六进制定义的编码,可以表示出任意文字。
Unicode设计的时候包含了所有的ascii码,所以有一部分编码是完全和ascii码重复的,但也有许多编码是ascii码没有的。
Java中无论是汉字还是英文字母都是用Unicode编码来表示的,一个Unicode码是16位,每字节是8位,所以一个Unicode码占两字节。但是英文字母比较特殊,源自于8位(1字节)的ASCII吗,于是在Unicode码仅使用了低8位(1字节)就可以表示,高8位的话不使用也无所谓。
Unicode与ascii编码对英文字母的编码是相同的:
大写字母范围:65~90
小写字母范围:97~122
所以:在java中,char型变量可以保存一个中文汉字,一个char型变量占两个字节
7.Boolean
Java中只有true跟false,0与非0是无效的
8.字符串String
在字符串操作中可以使用’+’进行连接。
任何数据类型遇到String的“+”操作都会自动变为String型数据
9.逻辑运算符 &、&&、|、||
&:表示普通与,所有的判断条件都要依次执行
&&: 表示短路与,若干个条件,如果前面的返回false,那么后面的条件就不在判断。
|:表示普通或,所有的条件都要依次执行
||:表示短路或,若干个条件,如果前面的返回true,那么后面的条件就不在判断。
位运算上:&表示按位与,|表示按位或
10.switch结构
每条分支后面都要记得加break语句
Switch支持整数、字符、枚举、字符串的判断。
11.关于制表符
在字符界面中,水平制表符表示紧跟后面的文字在往右一个表格位置显示或输出,通常一个表格位置占8个字符宽度,也就是相当于是把整个屏幕分成每8个字符为一个单元格大小,下一个表格位置是在下一个8的整倍数字符数的位置,使用水平制表符可以可以使文字内容在规整的位置显示或输出而看起来清晰整齐。
12.break语句强迫程序跳出当前循环
Continue语句强迫程序跳到循环的起始处
13.方法
在主类中定义一个方法可以在主方法中直接调用
Return语句可以结束一次调用
方法重载:方法名称相同,参数类型和个数不同
如果只有返回值类型不同,其他的都相同,则不构成一次重载。
System.out.println()可以输出各种类型的值,也是方法重载
14.递归调用: 必须有结束条件
每次调用的时候需要改变递归的参数
15.注意数据的溢出问题: Byte1字节 short 2字节 int 4字节 long 8字节 float 4字节 double 8字节