黑马程序员Java入门教程上部+下部【含斯坦福大学练习题+力扣算法题+大厂java面试题】学习笔记day02 - Java基础语法

免责声明:

  1. 本博客中的内容旨在记录博主学习历程,只提供一般信息,并不保证其准确性、完整性或实时性。

  2. 本博客中的链接可能会导向其他网站,这些网站的内容和观点与本博客无关。博主不对这些网站的内容、准确性、可靠性或完整性承担任何责任。

  3. 本博客中的任何意见和观点仅代表博主个人,不代表他人或组织的意见。

  4. 读者在使用本博客内容时应自行承担风险,博主不对任何直接或间接损失或损害承担任何责任。

  5. 本博客是在黑马程序员提供的笔记资源的基础上进行修改的,若需原版请关注黑马程序员公众号进行领取。

请在浏览和使用本博客内容前仔细阅读并接受本免责声明。对于不接受本免责声明的读者,请停止使用本博客。

1. 注释

​ 注释是对代码的解释和说明文字。

Java中的注释分为三种:

  • 单行注释:
// 这是单行注释文字
  • 多行注释:
/*
这是多行注释文字
这是多行注释文字
这是多行注释文字
*/
注意:多行注释不能嵌套使用。
  • 文档注释(暂时用不到):
/**
这是多行注释文字
这是多行注释文字
这是多行注释文字
*/

使用的技巧

​ 如果我们要对代码进行解释,那么就可以使用注释。

​ 当注释的内容比较少,一行就写完了,可以用单行注释。

​ 如果注释的内容比较多,需要写在多行,那么可以使用多行注释。

注意点

​ 注释的内容不会参与编译和运行的,仅仅是对代码的解释说明而已。

​ 所以,不管在注释当中写什么内容,都不会影响代码运行的结果。

2. 关键字

2.1 概念

​ 被Java赋予了特定含义的英文单词。

​ 当我们在代码中写了关键字之后,程序在运行的时候,就知道要做什么事情了。

注意:关键字很多,不用刻意去记。

abstractassertbooleanbreakbyte
casecatchcharclassconst
continuedefaultdodoubleelse
enumextendsfinalfinallyfloat
forgotoifimplementsimport
instanceofintinterfacelongnative
newpackageprivateprotectedpublic
returnstrictfpshortstaticsuper
switchsynchronizedthisthrowthrows
transienttryvoidvolatilewhile

2.2 第一个关键字class

​ 表示定义一个类。创建一个类。

类:Java项目最基本的组成单元,一个完整的Java项目有可能会有成千上万个类来组成的。

class后面跟随的就是这个类的名字,简称:类名。

在类名后面会有一对大括号,表示这个类的内容。

举例:

public class HelloWorld {

}

解释:class表示定义类。

​ 类名:HelloWorld

​ HelloWorld后面的大括号表示这个类的范围。

3. 字面量

作用:告诉程序员,数据在程序中的书写格式。

字面量类型说明程序中的写法
整数不带小数的数字666,-88
小数带小数的数字13.14,-5.21
字符必须使用单引号,有且仅能一个字符‘A’,‘0’, ‘我’
字符串必须使用双引号,内容可有可无“HelloWorld”,“黑马程序员”
布尔值布尔值,表示真假,只有两个值:true,falsetrue 、false
空值一个特殊的值,空值值是:null
public class Demo {
    public static void main(String[] args) {
        System.out.println(10); // 输出一个整数
        System.out.println(5.5); // 输出一个小数
        System.out.println('a'); // 输出一个字符
        System.out.println(true); // 输出boolean值true
        System.out.println("欢迎来到黑马程序员"); // 输出字符串
    }
}

区分技巧

  1. 不带小数点的数字都是整数类型的字面量。
  2. 只要带了小数点,那么就是小数类型的字面量。
  3. 只要用双引号引起来的,不管里面的内容是什么,不管里面有没有内容,都是字符串类型的字面量。
  4. 字符类型的字面量必须用单引号引起来,不管内容是什么,但是个数有且只能有一个。
  5. 字符类型的字面量只有两个值,true、false。
  6. 空类型的字面量只有一个值,null。

4. 变量

4.1 什么是变量?

​ 变量就在程序中临时存储数据的容器。但是这个容器中只能存一个值。

4.2 变量的定义格式

​ 数据类型 变量名 = 数据值;

4.2.1 格式详解

​ 数据类型:限定了变量当中能存储什么类型的数据。

​ 如果要存10,那么数据类型就需要写整数类型。

​ 如果要存10.0,那么数据类型就需要写小数类型。

​ 变量名:其实就是这个容器的名字。

​ 当以后想要使用变量里面的数据时,直接使用变量名就可以了。

​ 数据值:真正存储在容器中的数据。

​ 分号:表示语句的结束,就跟以前写作文时候的句号是一样的。

4.2.2 常用的数据类型

​ 整数:int

​ 小数:(浮点数)double

​ 其他数据类型稍后讲解

举例:

public class VariableDemo {
	public static void main(String[] args) {
		//定义一个整数类型的变量
		//数据类型 变量名 = 数据值;
		int a = 16;
		System.out.println(a);//16
		
		//定义一个小数类型的变量
		double b = 10.1;
		System.out.println(b);//10.1
	}
}
4.2.3 变量的注意事项
  • 变量名不能重复。
  • 在一条语句中,可以定义多个变量。但是这种方式影响代码的阅读,所以了解一下即可。
  • 变量在使用之前必须要赋值。
  • 定义变量时的语句相当于执行两条语句,即先声明变量然后再给变量赋值。

案例:

public class VariableDemo2 {
	public static void main(String[] args) {
		//1.变量名不允许重复
		//int a = 10;
		//int a = 20;
		//System.out.println(a);
		
		//2.一条语句可以定义多个变量
		//了解。
		//int a = 10, b = 20, c = 20,d = 20;
		//System.out.println(a);//?
		//System.out.println(b);//?
		
		
		//3.变量在使用之前必须要赋值
		int a = 30;
		System.out.println(a);
	}
}

5. 计算机中的数据存储

5.1 不同进制在代码中的表现形式

        二进制:由0和1组成,代码中以0b开头。

        十进制:由0~9组成,前面不加任何前缀。

        八进制:由0~7组成,代码中以0开头。

        十六进制:由0~9还有a~f组成,代码中以0x开头。

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println(17); //十进制
        System.out.println(017); //八进制
        System.out.println(0b123); //语法错误
        System.out.println(0x123); //十六进制
    }
}

        上述代码输出结果为对应的十进制数。

5.2 存储规则小结

6. 数据类型

6.1 Java语言数据类型的分类

  • 基本数据类型
  • 引用数据类型(面向对象的时候再深入学习)

6.2 基本数据类型的四类八种

数据类型关键字内存占用取值范围
整数byte1负的2的7次方 ~ 2的7次方-1(-128~127)
short2负的2的15次方 ~ 2的15次方-1(-32768~32767)
int4负的2的31次方 ~ 2的31次方-1
long8负的2的63次方 ~ 2的63次方-1
浮点数float41.401298e-45 ~ 3.402823e+38
double84.9000000e-324 ~ 1.797693e+308
字符char20-65535
布尔boolean1true,false
说明

​ e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。

​ 在java中整数默认是int类型,浮点数默认是double类型。

需要记忆以下几点

byte类型的取值范围:

​ -128 ~ 127

int类型的大概取值范围:

​ -21亿多 ~ 21亿多

整数类型和小数类型的取值范围大小关系:

​ double > float > long > int > short > byte

最为常用的数据类型选择:

  • 在定义变量的时候,要根据实际的情况来选择不同类型的变量。

    比如:人的年龄,可以选择byte类型。

    比如:地球的年龄,可以选择long类型。

  • 如果整数类型中,不太确定范围,那么默认使用int类型。

  • 如果小数类型中,不太确定范围,那么默认使用double类型。

  • 如果要定义字符类型的变量,那么使用char

  • 如果要定义布尔类型的变量,那么使用boolean

6.3 定义8种基本数据类型变量

public class VariableDemo3 {
    public static void main(String[] args) {
        //1.定义byte类型的变量
        //数据类型 变量名 = 数据值;
        byte a = 10;
        System.out.println(a);

        //2.定义short类型的变量
        short b = 20;
        System.out.println(b);

        //3.定义int类型的变量
        int c = 30;
        System.out.println(c);

        //4.定义long类型的变量
        long d = 123456789123456789L;
        System.out.println(d);

        //5.定义float类型的变量
        float e = 10.1F;
        System.out.println(e);

        //6.定义double类型的变量
        double f = 20.3;
        System.out.println(f);

        //7.定义char类型的变量
        char g = 'a';
        System.out.println(g);

        //8.定义boolean类型的变量
        boolean h = true;
        System.out.println(h);

    }
}
注意点
  • 如果要定义 一个整数类型的变量,不知道选择哪种数据类型了,默认使用int。
  • 如果要定义 一个小数类型的变量,不知道选择哪种数据类型了,默认使用double。
  • 如果要定义一个long类型的变量,那么在数据值的后面需要加上L后缀。(大小写都可以,建议大写。)
  • 如果要定义一个float类型的变量,那么在数据值的后面需要加上F后缀。(大小写都可以)

7. 标识符

7.1 硬性要求:

​ 必须要这么做,否则代码会报错。

  • 必须由数字、字母、下划线_、美元符号$组成。
  • 数字不能开头
  • 不能是关键字
  • 区分大小写的。

7.2 软件建议:

​ 如果不这么做,代码不会报错,但是会让代码显得比较low。

7.2.1 小驼峰命名法

适用于变量名和方法名

  • 如果是一个单词,那么全部小写,比如:name

  • 如果是多个单词,那么从第二个单词开始,首字母大写,比如:firstName、maxAge

7.2.2 大驼峰命名法

适用于类名

  • 如果是一个单词,那么首字母大写。比如:Demo、Test。

  • 如果是多个单词,那么每一个单词首字母都需要大写。比如:HelloWorld

不管起什么名字,都要做到见名知意。

阿里巴巴命名规范细节:

  1. 尽量不要用拼音。但是一些国际通用的拼音可视为英文单词。

    正确:alibaba、hangzhou、nanjing

    错误:jiage、dazhe

  2. 平时在给变量名、方法名、类名起名字的时候,不要使用下划线或美元符号。

    错误:_name

    正确:name

8. 键盘录入

​ 键盘录入的实际功能Java已经帮我们写好了,不需要我们自己再实现了,而Java写好的功能都放在了Scanner这个类中,所以,我们只要直接使用Scanner这个类就可以了。

使用步骤:

第一步:

​ 导包:其实就是表示先找到Scanner这个类在哪。

第二步:

​ 创建对象:其实就表示申明一下,我准备开始用Scanner这个类了。

第三步:

​ 接收数据:也是真正干活的代码。

代码示例:

//导包,其实就是先找到Scanner这个类在哪
import java.util.Scanner;

public class ScannerDemo1 {
	public static void main(String[] args) {
		//2.创建对象,其实就是申明一下,我准备开始用Scanner这个类了。
		Scanner sc = new Scanner(System.in);
		//3.接收数据
		//当程序运行之后,我们在键盘输入的数据就会被变量i给接收了
		System.out.println("请输入一个数字");
		int i = sc.nextInt();
		System.out.println(i);
	}
}

9. IDEA

9.1 IDEA概述

​ IDEA全称IntelliJ IDEA,是用于Java语言开发的集成环境,它是业界公认的目前用于Java程序开发最好的工具。

集成环境:

​ 把代码编写,编译,执行,调试等多种功能综合到一起的开发工具。

9.2 IDEA中层级结构介绍

9.2.1 结构分类
  • project(项目、工程)
  • module(模块)
  • package(包)
  • class(类)
9.2.2 结构介绍

​ 为了让大家更好的吸收,package这一层级,我们后面再学习,先学习最基础的project、module、class。

project(项目、工程)

​ 淘宝、京东、黑马程序员网站都属于一个个项目,IDEA中就是一个个的Project。

module(模块)

​ 在一个项目中,可以存放多个模块,不同的模块可以存放项目中不同的业务功能代码。在黑马程序员的官方网站中,至少包含了以下模块:

  • 论坛模块
  • 报名、咨询模块

为了更好的管理代码,我们会把代码分别放在两个模块中存放。

package(包)

​ 一个模块中又有很多的业务,以黑马程序员官方网站的论坛模块为例,至少包含了以下不同的业务。

  • 发帖
  • 评论

为了把这些业务区分的更加清楚,就会用包来管理这些不同的业务。

class(类)

​ 就是真正写代码的地方。

9.2.3 小结
  • 层级关系

    ​ project - module - package - class

  • 包含数量

    ​ project中可以创建多个module​ module中可以创建多个package​ package中可以创建多个class

    ​ 这些结构的划分,是为了方便管理类文件的。

9.3 IDEA中的第一个代码

9.3.1 操作步骤

        1. 创建Project 项目

        2. 创建Module 模块

        3. 创建class 类

        4. 在类中编写代码

        5. 完成编译运行

  • 30
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值