Java快速入门笔记-02 Java基础(基本数据类型、变量和常量、运算符、数组、字符串)

一、Java基本数据类型

Java语言提供了8种基本类型。6种数字类型(4个整数型,2个浮点型),1种字符类型,还有1种布尔型。
在这里插入图片描述

1.整数类型

Java的整数都是有符号的,用二进制表示都是补码形式(最高位0表示正,1表示负)。没有C中的unsigned无符号类型。

  • byte 字节类型
    大小:8 bit;
    范围:-128 ~ 127;
    默认值:0;

  • int 整型
    大小:32 bit;
    范围:-2,147,483,648(-2^31)~ 2,147,483,647(2^31 - 1)
    默认值:0;

  • short 短整型
    大小:16 bit;
    范围:-32768(-2^15)~ 32767(2^15 - 1);
    默认值:0;

  • long 长整型
    大小:64 bit;
    范围:-9,223,372,036,854,775,808(-2^63)~ 9,223,372,036,854,775,807(2^63 -1);
    默认值:0;

2.浮点数/小数类型

  • float 浮点型
    大小:32bit;
    精度:单精度;
    默认值:0.0f;

  • double 浮点型
    大小:64bit;
    精度:双精度;
    默认值:0.0d;

  • 浮点数可以用科学计数法表示,如:

float f1 = 3.14f;
float f2 = 3.14e38f; // 科学计数法表示的3.14x10^38
double d = 1.79e308;
double d2 = -1.79e308;
double d3 = 4.9e-324; // 科学计数法表示的4.9x10^-324

注:当变量类型为float时,需要在加上f或F后缀,表明其精度类型。

3.字符类型

字符型char表示的是一个单一的 16 位 Unicode 字符;

扫描二维码关注公众号,回复: 15056678 查看本文章
  • char 字符型
    范围:\u0000 ~ \uffff
    例如:char Char = 'A';

4.布尔类型

布尔类型就是true 或 false,没什么好说的。
例如:boolean T = true;

每个数据类型所占bit,以及最大最小值都是可以通过类似以下的方式查看的。

在这里插入图片描述

5.引用类型

首先说明,引用类型不属于基本的数据类型,引用类型的变量类似于C语言的指针,内部存储的是一个地址。Java的引用跟C++中的引用概念是类似的,可以说是为了干掉指针这个复杂的东西而衍生的。

引用类型最常用到的就是字符串类型String,如定义一个字符串:String str = "string";

二、变量&常量

1.变量

变量定义:

  • 方法1(只定义):

类型 + 变量名,如:int a;

  • 方法2(定义并赋值):

类型 变量名 = 变量值,如:int a=1;

变量命名的规则:

  • 必须以英文字母开头,后接字母,数字和下划线的组合

2.常量

变量是可以重新赋值的,常量的值在定义时初始化后不可再修改

定义常量使用关键字final,如:

final double PI = 3.14; // PI是一个常量

三、运算符

Java最基本的运算符包括:

  1. 算术运算符
    包括加减乘除,+-*/,以及自加、自减:++--

  2. 关系运算符
    关系是指:==相等、!=不相等、>大于、>=大于等于、<小于、<=小于等于。

  3. 位运算符
    C中经典的位运算Java中也有,即:&位与、|位或、^位异或、~位取反、<<左移位、>>右移位,还有一个>>>右移补零,先不管他。

  4. 逻辑运算符
    包括:&&逻辑与、||逻辑或、!逻辑非。

  5. 赋值运算符
    由等号=赋值结合位运算符而来,有以下这些:
    + =- =* =/ =% =<< =>> =&=^ =| =

  6. 其他运算符
    如,条件运算符:x?y:z,也称三元运算符。

Java的运算符基本与C语言的一致,学习过C可以直接跳过这部分。

四、数组和字符串

1.数组

Java定义数组的方式与C有点不同,定义方法如下:

类型+[]+数组名,如:int[] array; //定义一个整型数组array

使用C/C++中的方法(int array[])也是可以的,但不推荐。

  1. 定义操作举例:
  • 定义并初始化数组:
int[] array = {
    
     1, 2, 3, 4, 5};
  • 定义一个大小为10的整型数组:
int[] array = new int[10];
  • 使用new操作符初始化:
int[] array = new int[] {
    
     1, 2, 3, 4, 5};
  1. 访问数组元素
    使用索引访问数组的元素:
int[] array = {
    
     1, 2, 3, 4, 5};
a = array[0]; // a = 1
  1. Java数组特点
  • 数组所有元素初始化为默认值,整型都是0,浮点型是0.0,布尔型是false;
  • 数组创建后大小不可改变。

2.字符串

  • 字符和字符串的区别
    Java的字符类型char,占16bit,也就是2个字节。比C语言中的char多出一个字节,因此它可以存储范围更大的Unicode字符。Unicode编码无论是英文还是中文都采用两个字节存储,关于Unicode的介绍:Unicode

字符串是一连串的字符,至少包含2个字符。

  • 表示

Java字符串类型String是引用类型,用双引号"..."表示字符串。如:

String s = ""; // 空字符串,包含0个字符
String s1 = "A"; // 包含一个字符
String s2 = "ABC"; // 包含3个字符
String s3 = "中文 ABC"; // 包含6个字符,其中有一个空格

双引号表示的是单行的字符串,当需要表示包括换行在内的多行字符串时,可以用三个双引号表示(从java 13开始),如:

public class Main {
    
    
    public static void main(String[] args) {
    
    
        String s = """
                  Hello
                  world
                  !!!
                   """;
        System.out.println(s);
    }
}

打印出来的结果是这样的:

Hello
world
!!!

  • 转义字符
    当我们需要在字符串中显示双引号或其他特殊的字符如回车换行(\r\n)等字符时,就会用到转义字符,如:
String Str = "this is \"this\""; //字符串Str的内容是: this is "this"

因为在"..."之间再加入双引号会造成干扰,这里用\"表示为"\"就是转义字符
常见的转义字符如下:

\" 表示字符"
\' 表示字符'
\\ 表示字符\
\n 表示换行符
\r 表示回车符
\t 表示Tab
\u#### 表示一个Unicode编码的字符

  • 连接字符串
    可以使用+符号连接两个字符串,例如:
public class Main {
    
    
    public static void main(String[] args) {
    
    
        String s1 = "Hello";
        String s2 = "world";
        String s = s1 + " " + s2 + "!";
        System.out.println(s);//hello world!
    }
}

猜你喜欢

转载自blog.csdn.net/qq_41790078/article/details/113090682