JDK,JRE,JVM的区别
JDK:Java Development Kit(Java开发工具包)
Java开发工具包,亦是Java开发者必须安装的软件环境。JDK包含了JRE与开发Java程序所需所需的工具,如编译器、调试器、反编译器、文档生成器等。
JRE:Java Runtime Environment(Java运行环境)
Java程序运行的必要环境,包含类库和JVM。
JVM:Java Virtual Machine(Java虚拟机)
JVM是Java的虚拟机,引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
Java的基本组成
Java的基本组成包含数据类型、变量、标识符、运算符、字符串、数组、流程控制、注释
数据类型
Java的数组类型分为原始类型和引用类型。
原始类型:
1.整数类型:byte、short、int和long。
2.浮点类型:float和double。
3.字符类型:char。
4.布尔类型:boolean。
引用类型:
包括类,接口和数组。
比起c语言,Java的原始类型多了byte和布尔类型的boolean,byte是最小的整数类型,所占位数为8位。布尔类型boolean只包含True和False两个值。
Java使用Unicode码表示字符(C则使用ASCLL码表示),所以在Java中字符类型char占了16位,C中的char则占8位。
在Java中,若在变量声明时没有给变量赋初值,则会给该变量赋默认值。
Java的类型转换和C基本相同。
注释
单行注释 //
多行注释 /、/
文档注释 /**、*/,文档注释会包含在javadoc生成的文档中。
标识符
Java语言中,标识符是以字母、下划线(_)和美元符($)开始的一个字符序列,后面可以跟字母、下划线、美元符和数字。建议最好以字母开头、尽量不要包含其他符号,如程序中的类名“Circle” “TestJavaStructure”等。
元素
规范
实例
类名、接口名
首字母大写
Person Student SystemManager
变量名、数组名
Camel规则,小写开头
ageValue salary printInformation
函数名(方法名)
Camel规则,小写开头
setCourse getAge setUserName
包名
全部小写
com_zknu.czw sam.gover
常量名
全部大写
MAX_VALUE
C中标识符以字母,数字,下划线组成,都不能以数字开头。
变量
变量,即值可以改变的量。变量利用声明的方式将内存中的某个内存块保存下来以供程序使用。变量可以用来存放数据,而使用前必须先声明它的数据类型,也可以在声明时立即为其赋值,如程序中变量的声明和初始化(与C语言相同)。
运算符
运算符分为赋值运算符、算术运算符、位运算符和关系运算符
赋值运算符:=。
算术运算符:+、-、*、/、%。
常用:+=、-=、*=、/=、%=、++、–。
Java的赋值运算符和算术运算符使用方式和C中基本一致。
位运算符:~、&、|、、>>、<>>、&=、|=、=、>>=、<<=、>>>=。
含义
C语言
Java
按位与
a & b
a & b
a | b
a | b
按位异或
a ^ b
a ^ b
按位取反
~a
~a
左移
a << b
a << b
带符号右移
a >> b
a >> b
无符号右移
/
a>>> b
关系运算符:==、!=、>、=、<=。
三元运算符:?:。
Java的运算符优先级与C中的一致。
流程控制
流程控制语句可分为选择、循环和跳转三大类。
选择语句包括if-else语句和switch-case语句。
循环语句包括for语句、while语句和do-while语句。
中断语句包括break语句和continue语句。
Java的流程控制与C基本相同。
在for语句中,JDK1.5以上版本可以使用foreach语句
for each(数据类型 变量名称 : 数组名称){
// 语句序列;
}
数组
数组包含一维数组,二维数组和多维数组。
一维数组
数组名 = new 数据类型 [数组大小];
buffer = new int[5];
数据类型 数组名[] = new 数据类型[数组大小];
数据类型[] 数组名 = new 数据类型[数组大小];
int []buffer = new int[50];//声明数组的同时创建数组
int []buffer1 =new int[]{10,20,30,40,60};//因格式比较烦琐,所以很少使用
使用关键字new创建数组时,元素都是默认值,这种初始化叫做“动态初始化”。
还有一种不使用关键字new,在声明数组的同时就完成了创建和初始化的工具,称为“静态初始化”。
int [] buffer = {2,3,4,1,9}//不使用new,必须写在一行。
Java中数组的下标也是和C一样,从0开始到数组大小-1。不同于C的是,Java中会进行数组越界检查。
Java中,只开辟了栈内存空间的数组是永远无法使用的,必须有指向的堆内存才可以使用。要想开辟新的堆内存,必须使用关键字new,然后将此堆内存的使用权交给对应的栈内存空间,并且一个堆内存可以同时被多个栈内存空间指向。
二维数组
声明方法:
数据类型 数组名[][] 或者 数据类型[][] 数组名;
二维数组分配内存方法如下:
数组名 = new 数据类型 [行数组大小][列数组大小];
二维数组在分配内存时,必须告诉编译器二维数组的行与列个数。(C语言中二维数组声明大小时行个数可以省略)。
String类(字符串)
String是用于声明字符串的类,在Java中是一个特殊的类。
String类中有两种实例化对象的方法。
//直接实例化String对象
String s1 = "abc";
String s2 = "abc";
//调用String类中的构造方法实例化对象
String s3 = new String("abc");
String s4 = new String("abc");
在上述实例化对象中,s1 == s2, s3 != s4。
String的常用方法
方法名
功能
boolean equals (Object anObject) :
将此字符串与指定对象进行比较
boolean equalsIgnoreCase (String anotherString) :
将此字符串与指定对象进行比较,忽略大小写。
int length () :
返回此字符串的长度。
String concat (String str) :
将指定的字符串连接到该字符串的末尾。
char charAt (int index) :
返回指定索引处的 char值。
int indexOf (String str) :
返回指定子字符串第一次出现在该字符串内的索引。
String substring (int beginIndex) :
返回一个子字符串,从beginIndex开始截取字符串到字符串结尾。
String substring (int beginIndex, int endIndex) :
返回一个子字符串
char[] toCharArray () :
将此字符串转换为新的字符数组。
byte[] getBytes () :
使用平台的默认字符集将该 String编码转换为新的字节数组。
String replace (CharSequence target, CharSequence replacement) :
将与target匹配的字符串使用replacement字符串替换。
String[] split(String regex) :
将此字符串按照给定的regex(规则)拆分为字符串数组。
boolean contains(CharSequence s):
判断字符串中是否包含指定字符。
Ricardo_Sl
发布了1 篇原创文章 · 获赞 1 · 访问量 35
私信
关注
标签:总结,Java,String,运算符,数组,字符串,new,第一阶段
来源: https://blog.csdn.net/Ricardo_Sl/article/details/104056437