java的基础语法

1、标识符

字母、数字、下划线、美元符号的任意组合

注:

  • ​ 不能以数字开始
  • ​ 不能是java的关键字
  • ​ java区分大小写

作用: 赋给类、方法或变量等取名字

书写规范:

  • ​ 类名首字母大写以及遵循驼峰原则
  • ​ 常量大写字母和下划线
  • ​ 其余都要首字母小写和驼峰原则(变量、方法)

2、关键字

​ 编译器有提示

​ 例: for、if、publice、static等

3、变量和常量

3.1 变量

​ 在进行计算时,用来存放数据、接收数据

​ 实际上就是一个带名字的存储空间

3.1.1 变量的语法规则:
数据类型 + 变量名  =  变量值  {作用域}
3.1.2 数据类型:

​ java是一种强数据类型的语言,所以每个变量必须有明确的数据类型

3.1.3 作用域:

分为全局变量 和 局部变量

全局变量: 直接定义在类体中,在当前类中的任意位置都可以直接使用

局部变量: 定义在局部代码中(方法中、流程控制语句中)——只能在当前代码段中生效

局部变量使用的注意事项:

​ (1)局部变量如果没有初始化赋值,不能用于计算

​ (2)在同一作用域中,不能出现重复的同名变量

3.2 常量

不可改变的量,一般我们使用常量来定义一些状态值

​ 需要在变量前加final关键字,来声明一个常量

final int STATE_NORMAL = 0;

4、java中的八大基本数据类型

4.1 复合数据类型

​ 数组、枚举、自定义类型

4.2 基本数据类型

​ 整数、小数、布尔值、字符

4.2.1 整型

​ int(常用)、byte、short、long(L)

注: 用long的时候,建议在数值数据后加L

4.2.2 小数(浮点数)

​ float、double(常用)

区别: 在于精度不同——保留的小数位不同

注: (1)float在使用时,数值后面要加f

​ (2) 浮点数不能用于需要精确计算的场合(比如:涉及金钱计算)

在这里插入图片描述

4.2.3 布尔值

​ true/flase

4.2.4 字符类型

​ char 指单个字符,如’A’ ‘B’ ‘1’ ‘您’

注: 实际开发过程中使用最多的是字符串

​ String的底层是由char编写的

String str = "xialu123";
char str1 = "A";
char str2 = 97;  // a	

注: 单个字符用单引号,字符串用双引号 char c = ‘A’ ; String str1 = “abcd”;

5、运算符

5.1 常见运算符及其使用

注:

​ (1)java中,计算表达式的结果需要变量来接收,否则编译报错

​ (2)两个整数相除,不管结果如何,得到的还是一个整数(结果不会四舍五入)

5.1.1 一元运算符:

++ –

前++: 先自加,后将值赋给变量

后++: 先将值赋给变量,后自加

前 - -: 先自减,后将值赋给变量

后 - -: 先将值赋给变量,后自减

5.1.2 赋值运算符
int x,y;
x = y = 10;
5.1.3 复合赋值运算符

+= -= /= *= %=

5.1.4 关系运算符

> < = >= <= ==

结果为boolean类型(true/flase)

注: 字符比较要用equals()方法

public static void main(String[] args) {
    String password_db = "123456";
    Scanner scanner = new Scanner(System.in);
    String password = scanner.nextLine();
    if (password.equals(password_db)) {
        System.out.println("密码正确");
    } else {
        System.out.println("密码错误");
    }
    scanner.close();
}

拓展: scanner工具类 nextXXX() 从键盘获取各种类型数据

​ 例:nextInt() 获取整型

​ nextLine() 获取字符串

5.1.5 逻辑运算符

& | && || !

​ &:与
|:或 ——这&和|,两边都要运算

​ &&:逻辑与
||:逻辑或 ——这&&,左边不成立,右边就不用算了;这||,左边为true,右边就不用算了

这& |与&& ||区别是运算效率问题

5.1.6 三目运算符

格式:布尔运算 ?值1 :值2

//例
int result = a > b ? a : b;
int result = a % b == 0 ? a/b : a*b;
5.2 运算符的优先级问题

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存失败,源站可能有防盗链机制,建议将图片保存下来直接上传下上传(iEKk97BWExps-1638975005858)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20211208084110560.png)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20211208084110560.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ags1F4og-1638975326759)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20211208084110560.png)]

注: &&(与) 比 ||(或) 优先级高

5.3数据类型转换
5.3.1 自动转换(小—>大)

又称隐式转换

注:

  1. 不用书写代码,有系统自动完成的类型转换 —— 但是byte,short,char这三者,不管怎么组合运算得到的都是int类型

  2. String类型可与任何数据类型进行+运算,只不过此时其他类型都先转成字符串,然后进行拼接操作

    String  str=28;    
    int  x=28 ;    
    String  s=str+x; // s=2828,其中x会先被转成字符28
    
  3. 布尔类型和其他类型不能相互转换

  4. 复合赋值运算符也会进行自动转换

    //例1
    short  s=10;
    s=s+1// 此处会报编译错误,因为 s+1是int类型
    //例2
    short  s1=10//编译通过, 此时  s1+1是得到了一个int,但是此时为复合赋值运算,java
    //编译器会多做一步,将得到的int转成  short
    s1+=1
5.3.2 强制转换(大—>小)

又称显示转换

格式: int x=10; short y = (short) x

注:不是什么时候都可以实现任意转换的(使用不当,可能会出现一些问题)

​ 1、转换前的数据类型与转换后的数据类型兼容

String str = "1";
int x = (int)str; //编译报错

​ 2、浮点数强转整型会造成精度丢失

double d = 12.4;
int i = (int)d; //i = 12

​ 3、大—>小,可能会造成数据溢出

int x = 130;
byte b = (byte)x; //b = -126

6、工作空间

eclipse: 统一将多个项目存放在同一个文件夹,进行项目的统一管理

idea : idea中时提倡一个项目就是一个工作空间,然后一个项目下面有多个模块

7、注释

7.1 文档注释 /***/

​ 注释再类、方法上,解释该类或方法是做什么的

​ 可以通过java Doc命令生成对应的api文档手册

注:

  • 类上的文档注释: 要有作者、创建时间、类是做什么的
  • 方法上的文档注释: 要解释方法是做什么的、参数的含义、会发挥哪些数据类型
7.2 文本注释

/ * 多行 * /
//单行

​ 写给自己或看源码的人,放在代码块上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值