Java关键字
在这里面,蓝色的都是关键字。
public class HelloWorld {
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
一下是Java所有的关键字:
标识符
比如我们自己定义的HelloWorld就是标识符。
public class HelloWorld {
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
标识符规则如下:
标识符是区分大小写的,标识符不能和关键字重复。
标识符的合法与不合法
字面值
比如你在程序里面定义6,就能看出来你是定义的是6,这就是字面值。
然后创建一个java文件,我们进行试一下,输出如下代码:
/*
字符串,用双引号括起来的内容,例如:”monkey”
整数,所有整数,例如:1024
小数,所有小数,例如:3.14
字符,用单引号括起来的内容,里面只能放单个数字,单个字母或单个符号,例如:’a’
布尔,只有true和false
*/
public class ConstTest {
public static void main(String[] args){
System.out.println("Monkey");
System.out.println(1024);
System.out.println(3.14);
System.out.println("a");
System.out.println(true);
}
}
然后在命令行中打印:
就是我们在java程序输出的代码,然后在命令行中打印出来了。
变量
在编辑器中输入如下代码:
public class VarTest01
{
public static void main(String[]args){
//数据类型 变量名=变量值
int i = 10; //就是告诉计算机开辟一个
//数据类型 变量名;
//变量名 = 变量值
int j;
j =20;
System.out.println(i);
}
}
在命令行执行你的代码如下:
可以看到打印的就是当菜定义的变量i,结果为10.
在定义变量a = 10以后,如何改变a的值,代码如下:
public class VarTest02
{
public static void main(String[]args){
int a = 10;
System.out.println(a);
a = 15;
System.out.println(a);
}
}
此时直接用 a=15;就能重新定义了。命令行输出结果如下:
输出的a的改变后的结果为:15
细心的同学看到了 这次不是int a = 15;。而是a=15;。原因是我们在上面已经定义过a了,不能再次定义。如果再次在同一个域中(同一个大括号)重复定义a的话,代码如下:
public class VarTest02
{
public static void main(String[]args){
int a = 10;
System.out.println(a);
int a = 15;
System.out.println(a);
}
}
命令行输出结果为:
会提示重复定义变量a,所以这是不可行的。修改变量值的时候,不需要重新声明。在同一个域中(同一个大括号),变量名不能重复。
刚才讲了在同一个域中不能重复命名,但是可以在另一个大括号中声明变量a,代码如下:
public class VarTest02
{
public static void main(String[]args){
int a = 10;
System.out.println(a);
a = 15;
System.out.println(a);
}
public static void ml(){
int a = 10;
}
}
这个我们稍后进行讲解。
如果定义一个变量不给他赋值呢。会出现什么结果,代码如下:
public class VarTest02
{
public static void main(String[]args){
int a = 10;
System.out.println(a);
a = 15;
System.out.println(a);
int b; //b没有被赋值
System.out.println(b);
}
}
命令行输出结果为:
他会提示 没有初始变量b。所以这是一个错误的编码。
Java基本数据类型--整型
我们首先学习整数型,下面我们输入以下代码:
public class DataType01
{
public static void main(String[]args){
int i = 10;
long l = 888;
}
}
命令行输出结果为:
可见是没有报错的。
当我们输入以下代码时:
他会提示你整数的值太大,明明定义的是long类型的整数,怎么会这样呢。原来是程序默认long类型的整数也为int类型。如何正确的打印出来呢,输入以下代码:
public class DataType01
{
public static void main(String[]args){
int i = 10;
long l = 888;
long z = 43810234803284039L;
}
}
命令行输出结果为:
我们只需要在long类型的整数后面,加一个“L”就行了。
有的同学会问,为什么 long l = 888;这个整数不报错?答案是:自动类型转换,因为int类型比long类型的数值小,因为long l =888 的值还是属于int类型。没有超过int类型的位数。
在代码中注释如下:
public class DataType01
{
public static void main(String[]args){
int i = 10;
//自动化类型转换
long l = 888;
//程序将 43810234803284039看作是int类型,因为 43810234803284039已经超出了int类型的取值范围,所以会报错。
//正确的方法 :在为long类型赋值的时候,需要在后面加上“L"
//程序会默认的把整数的字面值当做int类型。
long z = 43810234803284039L;
}
}
long l = 888;属于字符小的转行成字符大的。下面我们用字符大的转行成字符小的如下:
public class DataType02
{
public static void main(String[]args){
long a = 999;
int b = a;
}
}
命令行输出如下:
随意我们不能这样转换,会出现报错。怎么样才能不会报错呢,我们需要强制转换 如下代码:
public class DataType02
{
public static void main(String[]args){
long a = 999;
//容量大的像容量小的类型转换时,需要强制类型转换。
//可能会损失精度,所以不太建议使用。
int b = (int)a;
}
}
命令行输出结果为:
可以看到这次是我们成功编译了。
下面我们看byte与short类型:
byte类型:
public class DataType02
{
public static void main(String[]args){
// 需要注意,给byte类型赋值时,需要注意取值范围。
// byte b = 128; error
byte b1 = 127; //只要不超过byte类型的取值范围,是没有问题的。
}
}
short类型:
public class DataType02
{
public static void main(String[]args){
short b1 = 32767;
}
}
只要不超过他的取值范围就可以编译成功。不会报错。
Java数据类型--浮点数
我们输入以下代码:
/*
float 4个字节
double 8个字节
*/
public class DataType03
{
public static void main(String[]args){
double d = 3.14;
}
}
我们在命令行编译以下:
我们可以看出编译成功。
然后我们定义一个float的类型变量,代码如下:
public class DataType03
{
public static void main(String[]args){
float f = 1.2;
}
}
命令行输入如下:
我们发现报错了,因为程序会默认为double类型的数字,我们可以这样改变代码:
public class DataType03
{
public static void main(String[]args){
float f = 1.2F;
}
}
命令行编译如下:
如果把double类型转换成float类型,可以强制转换:
public class DataType03
{
public static void main(String[]args){
double d = 3.14;
float f1 = (float)d;
}
}
编译后:
当然我们还可以这样写:
public class DataType03
{
public static void main(String[]args){
float f = (float)5.15;
}
}
编译后:
数据类型之布尔型
我们通过以下代码进行验证:
/* boolean的取值范围有两种:true和false。
boolean主要应用于逻辑运算和条件判断。
*/
public class DataType04
{
public static void main (String[] args){
boolean flag = true;
if (flag)
{
System.out.println(true);
}else{
System.out.println(false);
}
}
字符型
输入代码如下:
来源:oschina
链接:https://my.oschina.net/u/4374679/blog/4165803