java语法全总结2022(一)

简介: java语法全总结2022

一. 注释


注释是对代码的一种解释,在程序 的指定位置, 添加的一些说明性信息被注释掉的内容, 不会参与程序的编译和运行.

分类:
        单行:  // 注释信息
        多行:  /* 注释信息 */
        文档:  /** 注释信息 */

二. 关键字


Java语言中有特殊含义的单词,就是关键字。

关键字的特点:1.全都是小写字母组成的2.关键字被高级的代码编辑工具(idea)有特殊的颜色标记。

image.png

例如: 上图在idea中橙色标记的, public class static void int ... 等.

三. 自变量(常量) 


在程序执行过程中其值不会发生改变的量。

//1.字符串常量: 用双引号括起来的内容
System.out.println("hello"); 
//2.字符常量:用单引号括起来的内容
System.out.println('a');
//3.整数常量:所有整数
System.out.println(666);
//4.小数常量:所有的小数
System.out.println(3.14);
//5.布尔常量:只有true(真)和false(假)
System.out.println(true);
//6.空常量:   null,空常量不能直接输出

四. 变量


变量是内存中的一小片空间,空间中存储的数据可以在某个范围内发生改变。

变量的定义格式:

数据类型 变量名 = 初始值;

//定义int类型的变量,赋值为10
int a=10;
System.out.println(a);
//定义short类型变量,赋值为5
short b=5;
System.out.println(b);
//定义double类型变量,赋值为3.14
double c=3.14;
System.out.println(c);
//定义boolean类型变量,赋值为true
boolean d=true;
System.out.println(d); 
//定义char类型变量,赋值为'a'
char s='a';
System.out.println(s);
//定义long类型的变量,需要加后缀L   <===
long m=8888888888L; 
System.out.println(m);
//定义float类型的变量,需要加后缀F  <===
float f=3.14F; 
System.out.println(f);

注意事项:

1.定义long类型的变量,必须加后缀L
2.定义float类的变量,必须加后缀F
3.可以在一行定义多个同类型的变量
    int x=3,y=4;
    System.out.println(x);
    System.out.println(y);
4.变量没有初始值,不能直接使用。
5.变量的名称不同相同

五. 标志符


自己给变量, 类起的名字都是标识符

规则 (必须要遵守):

1. 26个英文字母(大小写都可以)

2. 数字0~9

3. _ $

要求:

1. 不能以数字开头   2. 不能是关键字  3. 严格区分大小写

 

规范(江湖规矩)

1. 小驼峰命名法 (变量)

 

       如果是一个单词, 所有字母小写 age

       如果是多个单词, 从第二个单词开始, 首字母大写 maxAge

 

2. 大驼峰命名法 (类)

     

       如果是一个单词, 首字母大写  Student

       如果是多个单词, 每个单词首字母大写, GoodStudent

六. 基本数据类型


四类八种:

整数:

       byte        1个字节        

       short       2个字节

       int         4个字节

       long        8个字节

小数:

       float       4个字节

       double      8个字节

字符:

       char        2个字节

布尔:

       boolean     1个字节

七. 引用数据类型


在Java中除了8种基本数据类型外,其他数据类型全部都是引用(reference)数据类型,引用数据类型用来表示复杂数据类型。

引用数据类型:有类,接口,数组等。

Scanner(键盘录入)举例以理解:

Java中的引用数据类型,作用于键盘录入. (通俗解释: 就是在程序运行时, 在控制台利用电脑键盘输入,所需要的对象)

// 1. 导包
import java.util.Scanner; 
// 2. 创建键盘录入对象
Scanner sc = new Scanner(System.in);
// 3. 接收键盘录入的数据(键盘输入的是什么类型, 就创建什么类型进行接收录入数据)
int age = sc.nextInt();

例如:

import java.util.Scanner;
public class Demo {
    public static void main(String[] args) {
        // 2. 创建一个键盘录入对象
        Scanner sc = new Scanner(System.in);
        // 友好提示:
        System.out.println("请输入一个整数: ");
        // 3. 键盘录入一个int类型的数据,并用int类型的变量 num 接收数据.
        int num = sc.nextInt();
        // 4. 打印输出数据
        System.out.println("你输入的值是: "+num);
    }
}

image.png

Random(随机数)

随机生成一定范围的随机数.

格式:

Random r=new Random();

int num = r.nextInt(n)+m;


n: 生成随机数的个数(就是在这个随机数范围中, 满足条件的数有几个);

m: 生成随机数时,起始值;


例如: 生成 [58~75]之间的随机数

n : 18 (58到75之间有几个数); 
// 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 (18个)
m : 58(随机数从58开始);
即: 
Random r=new Random();
int num = r.nextInt(18)+58; 

例如:

// 1. 导包
import java.util.Random;
public class Demo {
    public static void main(String[] args) {
        // 2.创建Random对象
        Random r=new Random();
        // 3.生成指定范围的随机数 生成[70,100]范围内的随机数 包含70包含100
        int num = r.nextInt(31)+70;
        System.out.println(num);
    }
}

八. 运算符


算数运算符

+ - * : 没啥需要注意的, 跟小学学的是一样的


/ : 整数相除, 结果只能得到整数, 想要得到带有小数的结果, 必须有小数参与运算

% : 取模 ---> 获取的时候除法之后剩余的 余数.


注意: % 一般情况是 判断一个数是否是偶数, 或者是一个数是否能被另一个数整除.  

    num % 2 == 0;   // 这个num就是一个偶数 
    num % n == 0;   // num能被n整除

例如:

int a = 5;
  int b = 2;
  System.out.println(5/2);    // 2 
  System.out.println(5%2);    // 1 

自增自减运算符

++ : 让变量自身的值 + 1操作

-- : 让变量自身的值 - 1操作

使用方式:

   1. 单独使用(推荐)

           ++, -- 在前在后没有区别

         

           int a = 10;

           a++;

           ++a;

   2. 参与运算使用(面试题)

            ++在前: 先自增, 再操作

            ++在后: 先操作, 再自增

                           - 先将该变量, 原本记录的值, 提取出来做操作, 然后再进行自增

 int a = 10;
             int b = a++; 
            // ++在a后面, 先将10赋值给b, b=10; 然后在a再去自增,a=11;
             System.out.println(a);  // 11
             System.out.println(b);  // 10
       int a = 10;
       int b = ++a; // ++在a前面, 先a去自增,a=11;然后再将11赋值给b, b=11;
       System.out.println(a);  // 11
             System.out.println(b);  // 11

使用场景:

需要做计数的时候, 例如求个数, 求几次. 做变量++操作.

赋值运算符

基本赋值运算符:

= : 将符号右边的数据, 赋值给左侧的变量

int a = 10;

扩展赋值运算符:

int a = 2; 
    int b = 5;
    b+=a; // b = b + a ;   //结果 : 7
        b-=a; // b = b - a ;   //结果 : 3
        b*=a; // b = b * a ;   //结果 : 10
        b/=a; // b = b / a ;   //结果 : 2
        b%=a; // b = b % a ;   //结果 : 1

+= : 将符号左右两边的数据做加法运算, 将结果赋值给左边

 -= : 将符号左右两边的数据做减法运算, 将结果赋值给左边

 *= : 将符号左右两边的数据做乘法运算, 将结果赋值给左边

 /+ : 将符号左右两边的数据做除法运算, 将结果赋值给左边

 %= : 将符号左右两边的数据做取余运算, 将结果赋值给左边

关系运算符

表达式:  

> >= < <= == !=

结论: 关系运算符无论简单还是复杂, 结果都只能是boolean类型的true, false

注意: =号是赋值运算符, ==是比较运算符

例如:

int a = 10;
  int b = 20;
  System.out.println(a > b);      // 结果: false
    System.out.println(a >= b);   // 结果: false
    System.out.println(a < b);    // 结果: true
    System.out.println(a <= b);   // 结果: true
    System.out.println(a == b);   // 结果: false
    System.out.println(a != b);   // 结果: true

逻辑运算符

&(与) : 并且, 符号两边结果必须同时是true,结果才能为true. 遇false结果就是false;

|(或) : 或者, 符号两边有一个结果是true,结果就为true. 遇true结果就是true;

!(非) : 取反, 取结果的对立面.

例如:

int a = 10;
  int b = 20;
  int c = 30;
  System.out.println(a > b & b < c);      // 结果: false
    System.out.println(a < b & b < c);    // 结果:true
    System.out.println(a > b | b < c);    // 结果:true
    System.out.println(a > b | b > c);    // 结果:false
    System.out.println( !(a > b) & b < c );   // 结果:true
    System.out.println(a > b & !(b < c) );    // 结果:false

短路:

短路逻辑运算符:

&  : 没有短路效果, 无论符号左边是true还是false, 右边都要继续执行

&& : 具有短路效果, 符号左边为false的时候, 右边就不执行了

  如果符号左边为true, 右边要继续执行

|  : 没有短路效果, 无论符号左边是true还是false, 右边都要继续执行

|| : 具有短路效果, 符号左边为true的时候, 右边就不执行了

  如果符号左边为false, 右边要继续执行

三元运算符

介绍: 可以根据一个判断条件, 达成二者选其一.

格式: 表达式 ?  值1 : 值2;

执行流程:

 1. 执行判断条件, 看其返回结果是true, false

 2. true : 值1就是运算结果

 3. false : 值2就是运算结果

例如:

利用三元运算符求三个整数的最大值

int a = 10;

int b = 20;

int c = 30;

// 谁是最大的?

int max = a>b?a:b;

int max1 = max>c ? max : c ;

System.out.println(max1);

相关文章
|
1月前
|
存储 Java 容器
JAVA基本语法
JAVA基本语法
15 0
|
2月前
|
存储 Java 编译器
【Java SE语法篇】7.面向对象——类和对象
【Java SE语法篇】7.面向对象——类和对象
【Java SE语法篇】7.面向对象——类和对象
|
14天前
|
存储 安全 Java
Java语法掌握:打好编程基础的关键(二)
Java语法掌握:打好编程基础的关键
52 0
|
14天前
|
存储 Java
Java语法掌握:打好编程基础的关键(一)
Java语法掌握:打好编程基础的关键
14 0
Java语法掌握:打好编程基础的关键(一)
|
1月前
|
Java 程序员 数据安全/隐私保护
Java中的异常语法知识居然这么好玩!后悔没有早点学习
Java中的异常语法知识居然这么好玩!后悔没有早点学习
32 1
|
1月前
|
存储 Java API
JAVA的基础语法
JAVA的基础语法
11 0
|
1月前
|
Java API
JAVA的语法和基本结构
JAVA的语法和基本结构
|
1月前
|
移动开发 前端开发 JavaScript
Java 和 JavaScript 的奇妙协同:语法结构的对比与探索(下)
Java 和 JavaScript 的奇妙协同:语法结构的对比与探索(下)
|
1月前
|
JavaScript 前端开发 Java
Java 和 JavaScript 的奇妙协同:语法结构的对比与探索(中)
Java 和 JavaScript 的奇妙协同:语法结构的对比与探索(中)