Java入门-01、注释、关键字、常量、变量、数据类型

注释:

作用 : 可以记录代码所实现的功能,方便程序员或代码编写者阅读代码以及方便他人更好理解代码

注释分类:

  1. 单行注释  格式: //注释信息
  2. 多行注释  格式: /*注释信息*/
  3. 文档煮熟  格式:/** 注释信息*/
/**
 * 文档注释
 */
public class Demo {
    /*
    多行注释
     这是main方法
    */
    public static void main(String[] args) {
	// 单行注释  打印Hello World!
        System.out.println("Hello World!");
    }
}

关键字:

关键字:就是被Java语言赋予了特定含义的单词

关键字的特点:关键字的字母全部小写

标识符:
 
标识符是用户编程时使用的名字,用于给类、方法、变量、常量等命名。
 
Java中标识符的组成规则:
  1. 由字母、数字、下划线“_”、美元符号“$”组成,第一个字符不能是数字。
  2. 不能使用java中的关键字作为标识符。
  3. 标识符对大小写敏感(区分大小写)。
 

Java中标识符的命名约定:

1、小驼峰式命名:变量名、方法名
首字母小写,从第二个单词开始每个单词的首字母大写。
2、大驼峰式命名:类名
每个单词的首字母都大写。
另外,标识符的命名最好可以做到见名知意
例如:username 、studentNumber等。  
 
 

常量、变量及数据类型:

常量:在java程序中固定不变的数据

变量:在java程序中可以变化的量称为变量

注意:定义的变量,不赋值不能使用

java的数据类型分为两大类:

基本数据类型:整数、浮点数、字符、布尔
引用数据类型:类、数组、接口

基本数据类型:
java的四类八种数据类型:
逻辑型:boolean
取值范围:true/false

文本型:char
取值范围:两个字节

整数型:byte short int long
取值范围:byte<short<int<long

浮点型:float double
取值范围:float<double

public static void main(String[] args) {

        /*输出常量*/
        //输出整型常量
        System.out.println(100);
        //输出小数常量
        System.out.println(1.00);
        //输出字符常量
        System.out.println('a');
        //输出布尔常量
        System.out.println(true);
        //输出字符串常量
        System.out.println("HelloWorld");

        /*定义变量   数据类型 变量名 = 数据值*/
        //定义字节型变量
        byte b = 16;
        System.out.println(b);
        //定义短整型变量
        short s = 1000;
        System.out.println(s);
        //定义整型变量
        int i = 1024;
        System.out.println(i);
        //定义长整型变量
        long l = 1234567890L;
        System.out.println(l);
        //定义单精度浮点型变量
        float f = 1.1f;
        System.out.println(f);
        //定义双精度浮点型变量
        double d = 8.88;
        System.out.println(d);
        //定义布尔型变量
        boolean bool = true;
        System.out.println(bool);
        //定义字节型变量
        char c = 'C';
        System.out.println(c);


    }

运算符:
算数运算符:+ - * % / ++ --
赋值运算符:= += -= *= /= %=
比较运算符:== < > <= >= !=
逻辑运算符:&& || !
三元运算符:数据类型 变量名 = 波尔类型表达式?结果1:结果2

 public static void main(String[] args) {
        //算术运算符
        int i = 0;
        i = i + 5;
        System.out.println(i);
        //赋值运算符
        int j = 1;
        j += 5;
        System.out.println(j);

        //比较运算符
        int p = 2, q = 4;
        //若括号里面为p>q成立则输出true否则输出false
        System.out.println(p > q);

        //逻辑运算符
        System.out.println(true && true);//输出true
        System.out.println(true && false);//输出false

        /*三目运算符
        数据类型 变量名 =布尔表达式?结果1:结果2
        若布尔表达式结果为真则将结果1赋值给k,否则将结果2赋值给k*/

        int k = (1 < 2 ? 100 : 200);
        System.out.println(k);

    }

运算符操作:

一、字符的“+”操作:

是拿字符在计算机底层对应的数值来进行计算的(详情可参照Ascii码表)

二、在算术运算符的操作中,如果算术表达式中包含多个基本数据类型的值的时候,整个算术表达式的类型会自动进行提升。

提升规则:

1、byte类型、short类型和char类型将被提升到int类型

2、整个表达式的类型自动提升到表达式中最高等级操作数同样的类型

等级顺序:byte,short,char-->int-->long-->float-->double

例子:

public class Main {

    public static void main(String[] args) {
        char a = 'a';
        int b = 10;
        int c = a + b;

        //char c = a + b; 程序报错
        System.out.println(c);//打印107,字符‘a’代表数值97
        
        int x = 10;
        double y = 11.12;
        //int z =x+y; 程序报错
        double z = x + y;
        System.out.println(z);
    }
}

三、字符串的“+”操作

字符串的+操作相当于拼接字符串

例子:

public class Main {

    public static void main(String[] args) {
        //打印结果为HelloWorld
        System.out.println("Hello"+"World");

        //注意  打印结果为   HelloWorld666
        System.out.println("Hello"+"World"+666);

        //注意  打印结果为   666HelloWorld
        System.out.println(666+"Hello"+"World");

        //结果是100566HelloWorld
        System.out.println("Hello"+"World"+100+566);

        /*注意
        结果并不是100566HelloWorld  而是666HelloWorld
        有两个整型数值要先做加法运算在进行字符串的拼接*/
        System.out.println(100+566+"Hello"+"World");
    }
}

结果:

赋值运算符:

赋值运算符包括:赋值=、加后赋值+=、减后赋值-=、乘后赋值*=、除后赋值/=、取余后赋值%=

public class Main {

//加后赋值
    public static void main(String[] args) {
        //把10赋值给int类型变量i
        int i = 10;
        //+=把左边和右边的数据做加法操作,结果赋值给左边
        //i+=20; 结果与下面的语句一致
        i = i + 20;
        System.out.println(i);

        short a = 10;
        //注意:扩展的赋值运算符底层隐含了强制类型转换
        a += 20;
        //a += (short) 20;
        System.out.println(a);
    }
}

自增自减运算符‘++’ ‘--’ :

注意++  --的位置

public class Main {

    public static void main(String[] args) {
        //单独使用时,++位置不同结果没有影响
        int i = 0;
        i++;
        System.out.println(i);

        int x = 0;
        ++x;
        System.out.println(x);

        //参与操作使用时,++的位置会影响结果
        //注意: y = z++ ,是先把z的值赋值给y之后,z才执行++操作
    /*    int z = 10 ;
        int y = z++;
        System.out.println(z);//输出结果为11
        System.out.println(y);//输出结果为10
*/
        //注意: y = ++z ,变量是先进行++操作,然后再进行赋值

        int z = 10 ;
        int y = ++z;
        System.out.println(z);//输出结果为11
        System.out.println(y);//输出结果为11

    }
}

关系运算符(比较运算符):

判断事件的真假要么是true要么是false

public class Main {

    public static void main(String[] args) {
        int x = 10;
        int y = 20;
        int z = 30;

        //判断括号内是否为真  
        System.out.println(x > y);//x的数值比y的数值小,所以x>y不成立 false
        System.out.println(x < y);//true
        System.out.println((x + y) == z);//true
        System.out.println((x + y) != z);//false

    }
}

逻辑运算符:(与、或、非、异或):

public class Main {

    public static void main(String[] args) {
        int x = 10;
        int y = 20;
        int z = 30;

        //与 &
        System.out.println((x & y) > 0);//x和y都大于0  true
        System.out.println((x + y) & (y + z));//x+y 和y+z 都大于0 true
        //或 |
        System.out.println((y | z) > x);//y和z有一个为真则为真  true
        System.out.println((x + y) | (y + z));//x+y和y+z有一个大于0则为真  true
        //非 !
        System.out.println(!(x > y));//x>y为false !(x+y)则为true
        //异或 ^
        System.out.println((x > y) ^ (y > z));//(x>y)和(y>z)两者不同则为真  相同则为false
    }
}

短路逻辑运算符 :

短路或||  短路与&&

逻辑与&:无论左边真假,右边都要执行

短路与&&:如果左边为真,右边执行;如果左边为假,右边不执行

逻辑|:无论左边真假,右边都要执行

短路与||:如果左边为假,右边执行;如果左边为真,右边不执行

public class Main {

    public static void main(String[] args) {
        int x = 10;
        int y = 20;
        int z = 30;
        //以下两个语句的结果都是一样的,但是短路或一旦判断有一个为真,则后面的语句不在执行和判断
        System.out.println((x++)<100||(y++)>100);//短路或 ||   true
        System.out.println(x+"---"+y);//x = 11 ,y = 10  已经判断x++<100 为真,所以y++不执行
       // System.out.println((x++)<100|(y++)>100);//true

        //短路与,一旦判断有一个为假,则后面语句不再执行
        System.out.println((x++)>100&&(y++)>100);//false
        System.out.println(x+"---"+y);//x=12,y=10   
        // System.out.println((x++)>100|(y++)>100);//false
    }
}

三元运算符:

格式:关系表达式?表达式1:表达式2;

规则:

如果关系表达式的值为真,则表达式1的值就是运算结果

如果关系表达式的值为错,则表达式2的值就是运算结果

public class Main {

    public static void main(String[] args) {
        int x = 10;
        int y = 20;

        //判断x>y的真假情况  为真则为x  为假则为y
        int z = x > y ? x : y;//x>y为false 所以 z=20
        System.out.println(z);
    }
}


数据类型转换:
自动转换:
将取值范围小的类型自动提升为取值范围大的类型(数据类型 变量名 = 被转数据值)
强制转换:
将取值范围大的类型强制转换成取值范围小的类型(数据类型 变量名 = (数据类型)被转数据值)
注意:
1、自动转换是java自动执行的,而强制转换需要我们手动执行
2、范围大的强制转成范围小的会造成数据损失精度,或者数据丢失(不建议使用)

 public static void main(String[] args) {
        double i = 10;//自动转换  取值范围小的类型自动提升为取值范围大的类型

        //  int j=10.1;//取值范围大的类型--转变-->取值范围小的类型(报错)
        int k = (int) 10.1;//强制转换  取值范围大的类型---->取值范围小的类型

        System.out.println(i + " " + k);
    }
发布了14 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/NeverFG/article/details/97612140