重学Java(003)—— Java基础知识(常量、变量、数据类型的转换、ASCII码、算术运算符、字符串)

1. 常量

常量是指:一旦被赋值后,就不能再更改了。
在Java中,利用关键字 final 指示常量,习惯上,常量名使用全大写。例如:

final double CM_PER_INCH = 2.54;

除此之外,当我们希望某个常量可以在一个类的多个方法中使用,通常将这些常量成为类常量,可以使用关键字 static final设置一个类常量。例如:

public static final double CM_PER_INCH = 2.54;

2. 变量

  1. 变量声明规范

    1.1 声明变量时,变量的类型位于变量名之前
    1.2 每个声明以分号结束
    1.3 变量名必须是一个以字母开头并由字母或数字构成的序列

  2. 变量的初始化

    声明一个变量以后,必须用赋值语句对变量进行显示初始化。初始化的方式有两种:

//第一种
int x = 3;

//第二种
int x;
x = 3;
  1. 使用变量时的注意事项
    3.1 如果创建多个变量,变量之间的名字不可以重复。
    3.2 float 和 long 类型的变量,字母后缀 F 和 L 不能丢掉。
    3.3 如果对于byte或者short类型的变量,右侧的数据值不能超过左侧的数据类型的范围。
    3.4 没有进行赋值的变量不能直接使用。
    3.5 变量使用不能超过作用域的范围。(作用域是指从声明变量的一行开始,一直到直接所属的大括号结束为止)
    3.6 不推荐一行语句声明多个变量。

3. 数据类型的转换

  1. 自动转换
    如果两个操作数中有一个操作数是 double 类型,另一个操作数就会转换为 double 类型。
    否则,如果其中一个操作数是 float 类型,另一个操作数将会转换为 float 类型。
    否则,如果其中一个操作数是 long 类型,另一个操作数将会转换为 long 类型。
    否则,两个操作数都将被转换为 int 类型。
    在这里插入图片描述
    ps:红线代表可能有精度损失

  2. 强制转换
    如果我们想要将 double 类型转换为 int 类型,也是可以的,但有可能会丢失一些信息,这时我们需要用强制类型转换(cast)来实现这个操作。
    强制类型转换:将取值范围大的类型强制转换成取值范围小的类型 。比较而言,自动转换是Java自动执行的,而强制转换需要我们自己手动执行.
    转换格式:数据类型 变量名 = (数据类型)被转数据值;
    例如:

double x = 9.99;
int y = (int) x;

此时,变量y的值为9,强制类型转换通过截断小数部分将浮点值转换为整型,如果想对浮点数进行舍入运算,则需要使用 Math.round 方法:

double x = 9.99;
int y = (int) Math.round(x);

注意:Math.round 方法返回的类型为long类型,所以仍然需要使用强制类型转换 (int)。

4. ASCII码

在计算机的内部都是二进制的0、1数据,如何让计算机可以直接识别人类文字的问题呢?就产生出了编码表的概念。
编码表 :就是将人类的文字和一个十进制数进行对应起来组成一张表格。
如图:

字符数值
048
957
A65
Z90
a97
z122

将所有的英文字母,数字,符号都和十进制进行了对应,因此产生了世界上第一张编码表ASCII(American Standard Code for Information Interchange 美国标准信息交换码)。

5. 算数运算符

  1. 算数运算符
运算符作用
+加法运算,字符串连接运算
-减法运算
*乘法运算
/除法运算
%取模运算,两个数字相除取余数
++、- -自增自减运算

PS:关于自增和自减运算符:
++ 运算,变量自己增长1。-- 运算,变量自己减少1,用法与 ++ 一致。
独立运算:
变量在独立运算时, 前++ 和 后++ 没有区别 。
变量 前++ :例如 ++i 。
变量 后++ :例如 i++ 。
和其他变量放在一起, 前++ 和 后++ 就产生了不同。

变量 前++ :变量a自己加1,将加1后的结果赋值给b,也就是说a先计算。a和b的结果都是2。

public static void main(String[] args) {
int a = 1;
int b = ++a;
System.out.println(a);//计算结果是2
System.out.println(b);//计算结果是2
}

变量 后++ :变量a先把自己的值1,赋值给变量b,此时变量b的值就是1,变量a自己再加1。a的结果是2,b的结果是1。

public static void main(String[] args) {
int a = 1;
int b = a++;
System.out.println(a);//计算结果是2
System.out.println(b);//计算结果是1
}

+符号在遇到字符串的时候,表示连接、拼接的含义。例如:

public static void main(String[] args){
System.out.println("5+5="+5+5);//输出5+5=55
}

6. 字符串

  1. Java没有内置的字符串类型,而是在标准 Java 类库中提供了一个预定义类,很自然地叫做String,每个用双括号括起来的字符串都是String类的一个实例,例如:
String e = ""; //这是一个空字符串
String greeting = "Hello";
  1. String类的substring方法可以从一个较大的字符串提取出一个子串,例如:
String greeting = "Hello";
String s = greeting.substring(0,3); //创建了一个由字符"Hel"组成的字符串

注意:substring方法中的参数意为:从0开始,到3结束,但不包含3
由于Java中没有提供用于修改字符串的方法,substring方法也可以用来修改字符串,例如将Hello字符串改为Help字符串,采用如下方法即可实现:

greeting = greeting.substring(0,3) + "p"; //greeting变为Help
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值