JAVASE基础 (二)

四、变量

变量是可以变化的量。java是一种强类型语言,每种变量都必须声明其类型。java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。

注意事项:每种变量必须有类型,类型可以是基本类型,也可以是引用类型。变量名必须是合法的标识符。变量声明是一条完整的语句,因此每一个声明都必须以分号结束。

变量作用域:类变量:

package com.dudu.base;

public class Demo06 {

    //类变量 static
    static double salary = 2500;

​ 实例变量:类里面,方法外面。从属于对象,如果不自行初始化,输出这个类型的默认值。布尔值默认是false,除了基本类型,其余的默认值都是null。

    //实例变量(类里面,方法外面):从属于对象;如果不自行初始化,输出这个类型的默认值
    //布尔值默认是false
    //除了基本类型,其余的默认值都是null;
    String name;
    int age;
    char name1;

结果:

​ 局部变量:方法里面,必须声明和初始值

        //局部变量;必须声明和初始化值
        int i = 10;
        System.out.println(i);

(成员变量:把类内、方法体外定义的变量称为成员变量。
Java中的成员变量分为两种:

一是没有static修饰的,这些成员变量是对象中的成员,称为实例变量。

二是有static修饰的,称为类变量(静态变量)。

静态变量(类变量)具备以下特点:

随着类的加载而加载
优先于对象存在
被所有对象所共享
可以直接被类名调用

类变量和实例变量的区别是:

1,存放位置。

类变量随着类的加载而存在于方法区中。

实例变量随着对象的建立而存在于堆内存中。

2,生命周期:

类变量生命周期最长,随着类的消失而消失。

实例变量生命周期随着对象的消失而消失。)

五、常量

常量初始化后不能再改变值。可以理解为一种特殊的变量,它的值被设定后,在程序运行的过程中不允许被改变。常量一般使用大写字符。

命名规范

1、所有变量、方法、类名都需要见名知意

2、类成员变量:首字母小写和驼峰原则:例:monthSalary。除了第一个单词外,后面的单词首字母大写 lastName

3、局部变量:首字母小写和驼峰原则

4、常量:大写字母和下划线 MAX_VALUE

5、类名:首字母大写和驼峰原则

6、方法名:首字母小写和驼峰原则

六、运算符

算术运算符:+,-,*,/,%(取余),++,–

package com.dudu.operator;

public class Demo01 {
    public static void main(String[] args) {
        //二元运算符
        int a = 10;
        int b = 20;
        int c = 25;
        int d = 25;

        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);
    }
}

结果:在这里插入图片描述

package com.dudu.operator;

public class Demo04 {
    public static void main(String[] args) {
        //++自增 --自减 一元运算符
        int a = 3;
        int b = a++;//执行完这行代码后,先给b赋值,再自增
        int c = ++a;//执行完这行代码前,先自增,再给c赋值

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        //幂运算 很多运算会使用一些工具类来操作
        double pow = Math.pow(2,3);
        System.out.println(pow);

    }
}

结果:在这里插入图片描述

赋值运算符:=

package com.dudu.operator;

public class Demo02 {
    public static void main(String[] args) {
        long a = 12312312323L;
        int b = 123;
        short c = 10;
        byte d = 8;

        System.out.println(a+b+c+d);//long
        System.out.println(b+c+d);//int
        System.out.println(c+d);//int
    }
}

结果在这里插入图片描述

关系运算符:>,<,>=,<=,==,!=instanceof

package com.dudu.operator;

public class Demo03 {
    public static void main(String[] args) {
        //关系运算符返回的结果:正确 错误 布尔值

        int a = 10;
        int b = 20;
        int c = 21;

        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);
        //取余,模运算
        System.out.println(c%a);//c/a 21/10=2...1

    }
    
}

结果:在这里插入图片描述

逻辑运算符:&&(与),||(或),!(非)

package com.dudu.operator;

public class Demo05 {
    public static void main(String[] args) {
        //逻辑运算符
        //与(and) 或(or) 非(取反)
        boolean a = true;
        boolean b = false;
        System.out.println("a && b:"+(a&&b));//逻辑与运算:两个变量都为真,结果为true
        System.out.println("a || b:"+(a||b));//逻辑或运算:两个变量有一个为真,结果为true
        System.out.println("!(a && b):"+!(a&&b));//逻辑非运算:如果为真,则变为假

        //短路运算
        int c = 5;
        boolean d = (c<4)&&(c++<4);//或运算符前面为false的话,后面不会进行运算。若运算,结果c=6,因为c=5,即短路运算
        System.out.println(d);
        System.out.println(c);

结果:在这里插入图片描述

位运算符:&,|,^(异或(两位相同则为0,不同则为1)),~(取反),>>(左移),<<(右移),>>>

        //位运算,与二进制有关。效率极高!
        /*
        A=0011 1100
        B=0000 1101

        A&B=0000 1100
        A|B=0011 1101
        A^B=0011 0001
        ~B=1111 0010

        2*8 = 16   2*2*2*2
        0000 0000 0
        0000 0001 1
        0000 0010 2
        0000 0011 3
        0000 0100 4
        0000 1000 8
        0001 0000 16
        << *2
        >> /2

         */

条件运算符:?:

package com.dudu.operator;

//三元运算符
public class Demo06 {
    public static void main(String[] args) {
        //x?y:z
        //如果x==ture,则结果为y,否则为z

        int score = 80;
        String type = score <60 ?"不及格":"及格";//必须掌握
        //if
        System.out.println(type);
        int w = 59;
        String type1 = w<60?"挂科":"不挂科";
        System.out.println(type1);
    }
}

结果:在这里插入图片描述

扩展赋值运算符:+=,-=,*=,/=

        //扩展赋值运算符
        int e = 10;
        int f = 20;
        e+=f;//e=e+f
        e-=f;//e=e-f
        System.out.println(e);

结果:30

​ -10

字符串连接符:

        //字符串连接符 +,+运算符两侧出现String类型,会把其他操作数都转换成String类型,再进行连接
        System.out.println(e+f);
        System.out.println(""+e+f);
        System.out.println(e+f+"");

结果:在这里插入图片描述

七、包机制

为了更好地组织类,java提供了包机制,用于区别类名地命名空间。一般利用公司域名倒置作为包名(www.baidu.com>com.baidu.www)。为了能够使用某一个包地成员,我们需要在java程序中明确导入该包。使用”import“语句可完成此功能。

八、JavaDoc

javadoc命令是用来生成自己API文档的

@author 作者名

@version 版本号

@since 指明需要最早使用的jdk版本

@param 参数名

@return 返回值情况

@throws 异常抛出情况

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值