文章目录

  • 一. 常量与变量
  • 1.1 常量
  • 1.2 变量
  • 二. 基本运算
  • 2.1 四则运算
  • 2.2 位运算
  • 2.3 逻辑运算
  • 2.4 三目运算
  • 2.5 运算过程中的类型转换
  • 2.5.1 字面值
  • 2.5.2 强制类型转换

本文为作者本人学习过程中整理的笔记,可帮助读者快速入门与快速回顾JAVA的一些基础知识。

一. 常量与变量

进行运算之前,我们首先要区分常量与变量。

1.1 常量

常量就是不变的量,通常被final修饰。

同时被static final 修饰的常量叫静态常量。

常量的命名通常为大写。

例如,我们通过阅读源码可得知基本类型的常量是静态常量:

/**
     * A constant holding the maximum value a {@code long} can
     * have, 2<sup>63</sup>-1.
     */
    @Native public static final long MAX_VALUE = 0x7fffffffffffffffL;

1.2 变量

变量类型 变量名 = 变量值;

变量名通常为小写。

举个栗子:

// 以下定义一个变量
		int variable = 9;

		System.out.println(variable);
		
		//如果定义变量的时候没有初始化,必须在后面为其赋值。
		int var;
		
		var = 8;
		
		System.out.println(var);

二. 基本运算

我们主要用基本数据类型来进行基本运算的学习与练习。

2.1 四则运算

运算



+


-


*


/

取余自增自减

运算


取余(求模)

%

自增

++

自减

- -

自增自减在变量前后的区别

根据编译方式的不同,是有区别的。

在JAVA中,自增自减放在变量前后的区别可以由程序体现:

public class Calculate {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
        int i = 1;
        int j = 1;
        int a = i++;
        int b = ++j;
        System.out.println(a+" "+b);
	}

a 相当于是 a = i; i++; 先赋值后运算

b 相当于是 j++; b = j; 先运算后赋值

2.2 位运算

位运算主要针对的是二进制的数据,日常开发直接用得比较少。

用到的时候再去查表也好像没什么毛病,这里先不做总结。

有空可以去了解一下。

2.3 逻辑运算

关系

符号

大于

>

大于等于

>=

小于

<

小于等于

<=

相等

==

不等

!=

符号

简介

&

长路与

&&

短路与

|

长路或

||

短路或

!


^

异或

长路符号前后的条件都会进行运算,短路则条件达成便不再进行后面的运算

2.4 三目运算

运算符

简介

[1] ? [2] : [3]

表达式1成立则返回表达式2的结果,否则返回3的结果

public class TernaryOperator {

    /**小练习,当例子。输入1~7,判断是否为工作日*/
	public static void main(String[] args) {
		// TODO Auto-generated method stub
        IsWeekend();
	}

	public static void IsWeekend() {
		Scanner sc = new Scanner(System.in);
		System.out.println("Please scan 1 to 7");
		int input = sc.nextInt();
		if(1 <= input && 7 >= input) {
			String day = input >=6 ? "Weekend" :"WorkingDay";
			System.out.println(day);
		}else{
			System.out.println("Scan worng, please reScan");
			IsWeekend();
		}
	}
}

2.5 运算过程中的类型转换

2.5.1 字面值

当我们为某个类型的变量赋值时,赋的值会有个默认的字面值。

当字面值与类型匹配不上时,我们就要加上后缀。

1) 整数类型的字面值是int:

java静态常量什么时候加载 java常量和静态常量的区别_java

2) 浮点数的字面值是float:

java静态常量什么时候加载 java常量和静态常量的区别_java静态常量什么时候加载_02

2.5.2 强制类型转换

在实现一些运算时,我们需要进行强制类型转换。较大的类型转换成小类型时,可能会出现精度丢失。

变量类型 变量名 = (强制转换成为的类型) 被强转的变量名;

java静态常量什么时候加载 java常量和静态常量的区别_java静态常量什么时候加载_03

强制转换类型也叫显式转换。

相应地,也有隐式转换类型:

隐式转换不需要加任何操作,自动完成,因此称为隐式转换。

java静态常量什么时候加载 java常量和静态常量的区别_java静态常量什么时候加载_04

举个例子:

//隐式转换
	int i = 1;
	float f = i;
	double d = f;