02- JAVA语言基础

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);  

} }

 字符型

输入代码如下:

 

posted @ 2019-06-19 23:37  WiltChamberlain  阅读(226)  评论(0编辑  收藏  举报