简单认识Java,数据类型与变量,运算符,程序逻辑控制
1 简单认识Java
1.1 介绍Java
Java相当于C++语法的纯净版本,是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
1.2 Java开发环境介绍
JDK、JRE和JVM三者的关系如下:
- JDK是整个Java的核心 。包括了Java运行环境JRE(Java Runtime Environment)、Java工具(如javac/java/jdb等)和Java基础的类库(即Java API,包括rt.jar)。
- JRE是Java程序运行的标准环境 。包含了一个JVM(Java虚拟机)和Java核心类库与其所支持的文件。
- JVM是Java虚拟机 。是Java运行时环境。
1.3 认识Java中的main函数
public class test{//源文件
public static void main(string[] args){//类
System.out.println("Hello world")://方法
}
}
源文件 。源文件是扩展名为.java的Java源码文件,通常叫做一个"编译单元",其中有类的定义。源文件中可以有多个类(包括抽象类和接口),但只能有一个public类,且源文件名和public类名必须相同,否则编译会报错。
类 。类是Java程序的核心组成部分,用来表示程序的一个组件,用来定义对象的结构(属性)和行为(方法)。
方法 。方法是类中用来执行特定任务或计算的函数,必须在类的内部声明,并在方法的花括号中编写应该执行的指令。
2 数据类型与变量
2.1 八大基本数据类型
数据类型 | 关键字 | 包装类 | 内存占用 | 范围 |
---|---|---|---|---|
字节型 | byte | Byte | 1字节 | -128~127 |
短整型 | short | Short | 2字节 | -32768~32767 |
整型 | int | Integer | 4字节 | -2 |
长整型 | long | Long | 8字节 | -2^61 ~ 2^61 |
单精度浮点数 | float | Float | 4字节 | 有范围,但不需要关注 |
双精度浮点数 | double | Double | 8字节 | 有范围,但不需要关注 |
字符型 | char | Character | 2字节 | 0~65535 |
布尔型 | boolean | Boolean | 没有明确范围 | true和false |
- 无论是在32为平台还是在64位平台,int都是占用4个字节,long都占8个字节。
- 整型和浮点型都是带有符号的。
- 整型默认为int,浮点型默认为double。
- 1KB=1024Byte,而一个Byte包括8个比特位。
2.2 变量
在Java中,要创建一个变量,需要声明它。变量声明包括三个部分:变量名、数据类型和(可选的)初始值。
dataType variableName = initialValue;
dataType
:指定变量可以存储的数据类型(如int
,double
,String
等)。variableName
:是变量的名称,用于在程序中引用该变量。initialValue
:是变量被声明时赋予的初始值,这是可选的,如果不提供初始值,则变量必须在使用前被显式地赋值。
整型变量 (int):
整型变量用于存储整数,包括正数、负数和零。
int integerVariable = 100; // 声明并初始化一个整型变量
长整型变量 (long):
长整型变量用于存储较大的整数,范围比整型更大。
long longVariable = 123456789012345L; // 注意,'L' 后缀表示这是一个long类型的字面量
短整型变量 (short):
短整型变量用于存储较小的整数,范围比整型更小。
short shortVariable = 10; // 声明并初始化一个短整型变量
字节型变量 (byte):
字节型变量用于存储非常小的整数,通常用于表示二进制数据。
byte byteVariable = 1; // 声明并初始化一个字节型变量
双精度变量 (double):
双精度变量用于存储双精度64位IEEE 754浮点数。
double doubleVariable = 3.141592653589793; // 声明并初始化一个双精度变量
单精度变量 (float):
单精度变量用于存储单精度32位IEEE 754浮点数。
float floatVariable = 3.14f; // 注意,'f' 后缀表示这是一个float类型的字面量
字符型变量 (char):
字符型变量用于存储单一的16位Unicode字符。
char charVariable = 'A'; // 声明并初始化一个字符型变量
布尔型变量 (boolean):
布尔型变量用于存储逻辑值,即true或false。
boolean booleanVariable = true; // 声明并初始化一个布尔型变量
3 移位运算符
对于Java基本运算符其实也没什么好讲的,太基础了,就不放上来碍眼了,唯一需要注意的是移位运算符
在Java中,移位运算符用于对二进制表示的整数进行位操作。这些运算符允许你将一个整数的位向左或向右移动,或者执行循环移位。Java提供了以下几种移位运算符:
3.1 左移运算符 (<<):
左移运算符将操作数的所有位向左移动指定的位数,右侧空出的位用0填充。
int a = 5; // 5的二进制表示是 0000 0101
int b = a << 2; // 左移2位,结果是 0001 0100,即十进制的4
System.out.println(b); // 输出 4
3.2 有符号右移运算符 (>>):
有符号右移运算符将操作数的所有位向右移动指定的位数,左侧空出的位用符号位(最高位)填充。对于正数,符号位是0,对于负数,符号位是1。
int c = 5; // 5的二进制表示是 0000 0101
int d = c >> 2; // 有符号右移2位,结果是 0000 0001,即十进制的1
System.out.println(d); // 输出 1int e = -5; // -5的二进制表示是 1111 1011(在补码表示中)
int f = e >> 2; // 有符号右移2位,结果是 1111 1111,即十进制的-1
System.out.println(f); // 输出 -1
3.3 无符号右移运算符 (>>>):
无符号右移运算符将操作数的所有位向右移动指定的位数,左侧空出的位总是用0填充,无论操作数的符号如何。
int g = 5; // 5的二进制表示是 0000 0101
int h = g >>> 2; // 无符号右移2位,结果是 0000 0001,即十进制的1
System.out.println(h); // 输出 1int i = -5; // -5的二进制表示是 1111 1011(在补码表示中)
int j = i >>> 2; // 无符号右移2位,结果是 0111 1111,即十进制的127
System.out.println(j); // 输出 127
使用移位运算符时,需要注意移位的位数不能大于或等于操作数的位数,否则结果将是未定义的。对于int类型,移位位数应小于32;对于long类型,移位位数应小于64。
此外,移位运算通常比加法和除法运算更快,因此在某些情况下,使用移位运算符可以优化性能。但是,这也可能使代码更难理解和维护,因此在使用之前应仔细考虑其可读性和可维护性。
以上就是java的基础内容啦,喜欢的多多点赞评论奥