Java中的基本数据与运算(关键字、标识符、运算符)

目录

一、关键字

二、标识符

三、注释

四、变量

五、数据类型

六、运算符

6.1 算术运算符

6.2 比较运算符

6.3 逻辑运算符

6.4 位移运算符


一、关键字

在 Java 中内置了很多有特殊意义的单词,这些单词不能做为类名、方法名、变量名来使用。关键字必须是小写的。

在我们的入门程序中已经接触到了以下几个:

  • public:它表示是公共的,是一个范围修饰符

  • class:它是用于定义类的关键字

  • static:它表示这个变量或方法是一个静态的,静态可以通过类名来访问,而且是放到内存的静态区域中。

  • void:它是用于修饰方法的,表示这个就去没有返回值。

二、标识符

对程序中出现的一些事物所起的名称,称之为标识符。

标识符必须遵守以下规则:

  • 标识符是由字母、数字、下划线_和美元符$构成的字符序列

  • 标识符必须以字母、下划线_或美元符$开头,不能以数字开头

  • 标识符不能是关键字

  • 标识符不能是Java内置关键字数据(thistruefalsenullsuper等)

  • 标识符不能是API里面的已知类的名称

  • 标识符可以为任意长度,但必须是一个连续的字符序列

  • 标识符严格区分大小写

三、注释

在java中有三种注释:

  • // 表示单行注释

  • /* */ 表示多行注释

  • /** */ 表示文档注释

四、变量

变量用于存放某个值的,而这个值可以在程序的运行过程中发生变化。它其实是在内存中开辟了一块区域来进行存放。便于程序在运行过程中使用。定义变量时,在遵守标识符的规则,同时我们尽量做到见名知意。

定义变量的格式:

变量类型 变量名称 = 值;

五、数据类型

在 Java 中数据类型分为如下两类:

  • 基本数据类型

    • 字节:byte

    • 字符:char

    • 短整型:short

    • 整型:int

    • 长整型:long

    • 浮点型:float

    • 双精度:double

    • 布尔类型:boolean

  • 引用数据类型

    • 数组

    • 接口

使用示例:

public class JavaType {   
     public static void main(String[] args) {      
          // 1. avaible      
          int age = 18;      
          System.out.println("age=" + age);      
          float money = 3.5F;      
          System.out.println("money=" + money);      
          boolean flag = true;      
          System.out.println("flag=" + flag);     
          char c = 'C';        
          System.out.println("c=" + c);  
          //char c = 'C1';   
          c = '1';   
          System.out.println("c=" + c);   
     }
}

注意:

  1. 变量需要先定义再使用

  2. 定义变量时需要指定它的类型

  3. 如果定义的是 float 类型,则它的值后在带上小 f 或 大 F ,这样才能明确指定它是 float 类型,否则它就是 double 类型

  4. 布尔类型在 java 中只有两个值:true 和 false

  5. 字符的值只能使用单引号,而且单引号中只能有一位

六、运算符

6.1 算术运算符

在 Java 中,算术运算符包含:+、-、*、/、%

public class ArithmeticOperator {
public static void main(String[] args) {
int a = 10; // 定义了一个整型类型的变量 a,它的值是 10
int b = 6;
// 1. + 加法运算符,它是用于两个数相加操作
int result = a + b;
//System.out.println(result);
System.out.println("result = " + result);
System.out.println("--------");
// 2. - 减法运算符
result = a - b;
System.out.println("result = " + result);
// 3. * 乘法运算符
result = a * b;
System.out.println("result = " + result);
// 4. / 除法运算符。注意在 Java中两个整数相除,结果为整数。
result = a / b; // 10 / 6 = 1
System.out.println("result = " + result);
// 类型自动提升:发生在小类型向大类型转换。如将 int 转换为 double
double r = a / b * 1.0;
System.out.println("r = " + r);
// 大类型向小类型转换,需要强制执行,格式是使用一对小圆括号来指定要转换了类型
int n = (int)r;
System.out.println("n = " + n);
// 5. % 取模运算符,它其实是得到两个数相除的余数。
result = a % b;
System.out.println("result = " + result);
}
}

在Java中除了算术运算符以外,还有++、--运算符

public class ArithmeticOperator02 {
public static void main(String[] args) {
// ++ 运算符,它是一种自增操作
通过加法和减法运算符,实现两个数的交换操作:
int a = 10;
int r = a++; // 如果++在变量之后,是先将变量的值赋值后,自己再加1操作
System.out.println("r = " + r + ", a = " + a); // r = 10, a = 11
int b = 5;
r = ++b; // 如果 ++ 在变量之前,是先将变量做加1操作后,再把结果赋值给变量
System.out.println("r = " + r + ", b = " + b); // r = 6, b = 6
int c = 6;
int s = ++c + c++ + c++ + ++c;
/**
* 7 + c++ + c++ + ++c; c = 7
* 7 + 7 + c++ + ++c; c = 8
* 7 + 7 + 8 + ++c; c = 9
* 7 + 7 + 8 + 10; c = 10
*/
System.out.println("s = " + s + ", c = " + c); // s = 32, c = 10
}
}
public class ArithmeticOperator03 {
public static void main(String[] args) {
int a = 5;
int r = a--; // 如果 -- 在变量之后,是先将变量的值赋值给别的变量后,自己再减1
System.out.println("r = " + r + ", a = " + a);
int b = 5;
r = --b; // 如果 -- 在变量之前,是先自己执行减1操作后,再将结果赋值给别的变
量。
System.out.println("r = " + r + ", b = " + b);
int c = 6;
int s = --c + c++ + c-- + ++c;
/**
* --c + c++ + c-- + ++c;
* 5 + c++ + c-- + ++c; c = 5
* 5 + 5 + c-- + ++c; c = 6
* 5 + 5 + 6 + ++c; c = 5
* 5 + 5 + 6 + 6; c = 6
*/
System.out.println("s = " + s + ", c = " + c); // s = 22, c = 6
}
}

通过加法和减法运算符,实现两个数的交换操作:

public class ArithmeticOperator04 {
public static void main(String[] args) {
// 需求:使用 + 和 - 运算符实现两个数的交换
int a = 3;
int b = 4;
System.out.println("a = " + a + ", b = " + b);
//int tmp = 0;
//tmp = a;
//a = b;
//b = tmp;
a = a + b;
b = a - b;
a = a - b;
System.out.println("a = " + a + ", b = " + b);
}
}

6.2 比较运算符

在 Java 中比较运算符包括 大于(>)、大于等于(>=)、等于(==)、小于(<)、小于等于(<=)、不等于(!=) 对比较运算符,运算后的结果是一个布尔类型的值。

public class ComparisonOperator01 {
public static void main(String[] args) {
int a = 6;
int b = 6;
System.out.println(a > b); //false
System.out.println(a >= b); // true
System.out.println(a < b); // false
System.out.println(a <= b); // true
System.out.println(a == b); // true
System.out.println(a != b); // false
}
}

6.3 逻辑运算符

逻辑运算符中包括与(&&)、或(||)、非(!),他们运算的结果也是布尔类型的值

public class LogicalOperator01 {
public static void main(String[] args) {
boolean f1 = true;
boolean f2 = false;
boolean f3 = false;
boolean f4 = true;
// 使用 && 操作时,在这个运算符的前后值都是 true 时,结果才为 true;否则结果为
false
System.out.println(f1 && f2); // true && false = false
System.out.println(f3 && f1); // false && true = false
System.out.println(f1 && f4); // true && true = true
System.out.println(f2 && f3); // false && false = false
System.out.println("-------------------");
// 当使用 || 操作时,在这个运算符前后的值只要有一个是 true 结果就为 true,否则
结果为 false
System.out.println(f1 || f2); // true || false = true
System.out.println(f3 || f1); // false || true = true
System.out.println(f1 || f4); // true || true = true
System.out.println(f2 || f3); // false || false = false
System.out.println("-------------------");
// 使用 ! 运算符,如果原来的值是 true 取反后值为 false;如果原来的值是 false,
取后结果为 true
System.out.println(!f1); // !true = false
System.out.println(!f2); // !false = true
}
}
当我们把比较运算符和逻辑运算符相结合使用时:

public class LogicalOperator02 {
public static void main(String[] args) {
int a = 5;
int b = 6;
boolean c = true;
System.out.println(a > b && c); // false
System.out.println(a > b || c); // true
}
}
  • &&运算符的短路效果是:当表达中找到 false 后,后面的值就不计算了,直接返回 false 值。
  • ||运算符的短路效果是:当表达中找到 true 后,后面的值就不计算了,直接返回 true 值。
算术运算符与逻辑运算符也可以综合使用,演示短路效果:

public class LogicalOperator03 {
public static void main(String[] args) {
int a = 5;
boolean f1 = true;
System.out.println(f1 || a/0 == 0);
boolean f2 = false;
System.out.println(f2 && a/0 == 0);;
}
}

6.4 位移运算符

位移运算包括左移 << 、右移 >> ,无符号左移 <<<,以及无符号右移 >>>

public class ShiftBitwiseOperators01 {
public static void main(String[] args) {
// 需求:计算 2 的 3 平方
int a = 2;
int r = a * a * a;
System.out.println(r);
r = a << 2;
System.out.println(r);
}
}


使用位移运算符来实现两个数据的交换:

public class ShiftBitwiseOperators02 {
public static void main(String[] args) {
int a = 3;
int b = 4;
System.out.println("a = " + a + ", b = " + b);
a = a ^ b;
b = a ^ b;
a = a ^ b;
System.out.println("a = " + a + ", b = " + b);
}
}
  • 30
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Smiling Mr. Rui

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值