标识符和变量

标识符

什么是标识符

程序员在定义java程序时,自定义的一些名字,标识符可以应用在类名,方法名,变量名,包名上。

标识符遵循规则

1、字母,数字,下划线,美元符号组成,不能以数字开头。

2、大小写敏感。

3、不能与JAVA关键字冲突,关键字全是小写。

4、true和false/null不是java的关键字,但也不能做为标识符。

标识符的命名规范

1.包名

全部小写,比如:com.boxiaoyuan.www 

2.类名和接口

单词的首字母大写,其它字母小写,比如:HelloWorld

3.变量名和方法名

首单词全部小写,其他单词的首字母大写,其他小写,比如:userName

4.常量名

全部大写,单词和单词之间使用下划线分割,比如UP_DIRECTION

注意:只是为了增加规范性、可读性而做的一种约定,标识符在定义的时候最好见名知意,提高代码阅读性。

关键字

什么是关键字

在java中,有些标识符是有着特殊含义的,我们把这些具有特殊含义的标识符叫做关键字。

常见关键字

定义数据类型的关键字
classinterfacebyteshortint
longfloatdoublecharboolean
void    
定义流程控制的关键字
ifelseswitchcasedefault
whiledoforbreakcontinue
return    
定义访问权限的关键字
privateprotectedpublic  
定义类,方法,变量的关键字
abstractfinalstaticsynchronized 
定义类与类之间关系的关键字
extendsimplements   
定义实例及引用实例,判断实例的关键字
newthissuperinstanceof 
异常处理的关键字
trycatchfinallythrowthrows
用于包的关键字
packageimport   

 

 注释

注释的作用

注释可以提高程序的可读性,使java程序的条例更加清晰,方便后期的维护。

注释的种类

1.//单行注释

2./**/多行注释

3.文档注释/***/

注释的细节

1. 单行注释可以嵌套使用,多行注释不能嵌套使用。

2. 一般单行注释都是写在代码的右边,多行注释写在代码的上方。

3. 文档注释也是多行注释。

4.多行注释中可以嵌套单行注释。

文档注释

1.一个类需要生成开发者文档,需要使用关键字public修饰该类。

2.文档注释一定要位于一个类的上方或者是一个方法的上方。

package com.boxiaoyuan.test;

/**
 * 需求:在控制台打印helloworld
 * @author boxiaoyuan
 * @version 1.0
 */
public class Demo0002 {
    /**
     * 该方法是程序的主入口,保证该类可以单独运行
     * @param args 运行该类时需要传递的参数
     */
    public static void main(String[] args) {
        System.out.println("hello world");
    }

}
E:\javatest\JavaTestProj\src\com\boxiaoyuan\test> javadoc -encoding UTF-8 -d D:/testaa -version  -author Demo0002.java

常量

常量概述

常量是指在程序运行过程中其值不能改变的量。

常量分类

    整数常量 : 所有整数

    小数常量 : 所有小数

    布尔常量 : 只有true和false

    字符常量 :使用’’引起来的单个字符

    字符串常量 :使用“”引起来的字符序列,“”  、“a” 、” ” 

    null常量 : 只有一个值null

 整数常量的表现形式

二进制:由0,1组成,以0b开头。

八进制:由0,1,...7组成,以0开头。

十进制:由0,1,...9组成,整数默认是十进制。

十六进制:由0,1,...9,a,b,c,d,e,f(大小写均可)组成,以0x开头。

字符常量

转义字符名称
\b退格键
\ttab键
\n换行
\r回车
\\反斜杠
\'单引号
\\"双引号
 

 说明:换行符就是另起一行,回车符就是回到一行的开头,我们平时编写文档的回车符应该叫回车换行符。

定义常量

常量一旦被初始化后,就不可以被更改,声明的格式为:

final 数据类型 变量名称 = 变量初始值;

final是定义常量的关键字。

public class Demo0003 {
    //静态常量,不需要创建对象就可以反问,在类外访问形式为Demo0003.PI。
    public static final double PI = 3.14;
    //声明成员常量
    final static int x = 11;
    
    public static void main(String[] args) {
        //声明局部常量
        final double y = 2.1;
    }
}

定义常量时需要注意:

  • 定义常量时需要对常量进行初始化。
  • final关键字不仅可以修饰基本的数据类型,还可以修饰对象的引用和方法。
  • 为了与变量区别,常量名一般都用大写字符。

变量

变量的概述

用于存储可变数据的容器。

变量的声明

数据类型 标识符;
数据类型 标识符 = 变量值

变量的数据类型

1. 整型

byte   代表一个字节的大小   8bit  2(8)   -128~127        256

 short  代表两个字节的大小  16bit  2(16)  -2(15)~2(15)-1

int    代表四个字节的大小  32bit  2(32)  -2(31)~2(31)-1

long   代表八个字节的大小  64bit  2(64)  -2(63)~2(63)-1

如果一个数值没有采取特殊的处理,那么该整数默认的类型是int

可以使用数值后面添加L或小写L改变默认的整数类型。

2. 浮点型

 float  代表四个字节的大小  32bit

 double 代表八个字节的大小  64bit

java程序中所有的小数默认的类型是double类型,所以需要使用特殊的符号改变默认的小数类型。

3. 字符型

  char   代表两个字节的大小  16bit  2(16)

  原理:将字符映射为码表中对应的十进制数据加以存储。

4. 布尔型

   boolean  占一个字节或者四个字节。只有true与false两个值。

如果boolean用于声明一个基本类型变量时是占四个字节,如果用于声明一个数组类型的时候,那么数组中每个元素占一个字节。

变量赋值

变量初始化是指为变量指定一个明确的初始值,初始化变量有两种方式:一种是声明时直接赋值,一种是先声明后赋值。

public class Demo0004 {
    char usersex = '';    
    public static void main(String[] args) {
        String username ;
        username = "张三";
    }
}

注意事项:

  • 变量是类中的字段,如果没有显式初始化,默认状态下创建便令并默认初始值。
  • 方法中的变量必须显式初始化,否则使用时会报错。

数据类型转换

隐式转换

隐式转换的实现需要同时满足两个条件:两种数据类型彼此兼容;目标类型的取值范围大于源数据类型(低级数据类型转换成高级数据类型)。

转换规则:

数值型数据的转换:byte--->short--->int--->long--->float--->double。

字符型转换为整形:char--->int。

 显式转换

当两种类型彼此不兼容,或者目标类型取值范围小于源类型,无法进行自动隐式转换,需要进行强制类型转换。

public class Demo0004 {     
    public static void main(String[] args) {
        int a = 128;
        byte b = (byte)a;
        System.out.println(b);//-128
    }
}

强制类型转换会损失精度。

int

00000000000000000000000010000000

 

 

byte

10000000

 

 

补码的运算步骤:

  • 先获取负数的绝对值,然后获取绝对值的二进制(原码)
  • 原码取反(反码)
  • 反码+1=补码

10000000(首位为1,表示负数,根据补码算原码)--->01111111(反码)--->10000000(原码)--->加上负号-128

 运算符

算术运算符

java中常用的算术运算符:

算术运算符名称
+加法
-减法
*乘法
/除法
%求余
++自增1
--自减1

示例:

public class Demo0004 {     
    public static void main(String[] args) {
        int a = 5;
        int b = ++a;
        System.out.println(b);//6,a先自增1,然后再赋值给b
        
        int c = 5;
        int d = c++;
        System.out.println(d);//5,c先赋值给d,然后再自增1
    }
}
public class Demo0005 {     
    public static void main(String[] args) {
        int age1 = 12;
        int age2 = 13;
        System.out.println(age1 + age2);//25,加法
        System.out.println(age2 - age1);//1,减法
        System.out.println(age1 * age2);//156,乘法
        System.out.println(age1 / age2);//0,除法
        System.out.println(age2 % age1);//1,求余    
    }
}

赋值运算符

java中常用的赋值运算符:

赋值运算符名称
=赋值
+=加等于
-=减等于
*=乘等于
/=除等于
%=模等于

 示例:

public class Demo0006 {     
    public static void main(String[] args) {
        int one = 10;
        int two = 20;
        int three = 0;
        three +=one; //等同于three = three + one
        System.out.println(three);//10
        three -= one; //等同于three = three - one
        System.out.println(three);//0
        one *= two; //等同于one = one * two
        System.out.println(one);//200
        one /= two; //等同于two = two /one
        System.out.println(one);//10
        two %= one; //等同于two = two % one
        System.out.println(two); //0        
    }
}

比较运算符

java中常用的比较运算符:

比较运算符名称
>大于
<小于
>=大于等于
<=小于等于
==等于
!=不等于

 

 > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型

== 、 != 两边的操作数既可以是数值类型,也可以是引用类型

示例:

public class Demo0007 {     
    public static void main(String[] args) {
        int a = 12;
        double b = 14.9;
        String s1 = "hello";
        String s2 = "hello";
        System.out.println("a等于b:"+(a==b));//false
        System.out.println("a大于b:"+(a>b));//false
        System.out.println("a小于b:"+(a<b));//true
        System.out.println("a大于等于b:"+(a>=b));//false
        System.out.println("a小于等于b:"+(a<=b));//true
        System.out.println("a不等于b:"+(a!=b));//true
        System.out.println("s1等于s2:"+s1.equals(s2));//true
    }
}

说明:

  • ==用于基本数据类型数据比较时,判断的是两个数据是否相等,==用于引用数据类型比较的时候,那么比较的是两个变量所指向的对象是否为同一个(比较的是内存地址)。

  • ==比较的是2个对象的地址,而equals比较的是2个对象的内容。

逻辑运算符

java中常用的逻辑运算符:

逻辑运算符名称
&逻辑与
|逻辑或
!逻辑非
&&短路与
||短路或
^异或

说明:

  • &,只要两边的boolean表达式结果有一个为false,则结果为false;两遍都为true,则结果为true。
  • |,两遍只要有一个为true,则结果为true;当两边都为假时,则结果为假。
  • ^,两边相同,结果为false;两边不同,结果为true。
  • &&,先对左边进行判断, 如果位真,则判断右边;如果为假,则不再判断右边,它的效率比逻辑与要高一点。
  • ||,先判断左边,为假,则再判断右边,如果右边为假,则为假,否则返回真.;如果左边为真,则为真,不再判断右边。

 位运算符

java中常用的位运算符为:

位运算符名称
&
|
^异或
~取反

 说明:

  • &,参见运算的两位数都为1,&运算符结果才为1,否则就为0。
  • |,参与运算的两位都为0,运算的结果才为0,否则就为1。
  • ^,只有参与运算的两位不同,运算的结果才为1,否则为0。
  • ~,取反,规律,把对应的值加上负号,再减去1。

移位操作符

<<   空位补0,被移除的高位丢弃,空缺位补0。

>>   被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,空缺位补1。

>>>  被移位二进制最高位无论是0或者是1,空缺位都用0补。

三元运算符

格式:

(条件表达式)?表达式1:表达式2;

如果条件表达式为true,运算后的结果为表达式1,反之,则运算后的结果为表达式2。

示例:

public class Demo0008 {     
    public static void main(String[] args) {
        int x = 6;
        System.out.println(x % 2==0 ? "偶数" : "奇数"); //偶数
    }
}

 

转载于:https://www.cnblogs.com/zhuzhaoli/p/11470966.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值