Java学习笔记——核心语法

注释

//单行注释

/*
	多行注释
*/

/**
	文档注释
*/

字面量

数据在代码中的格式。

整数和小数:直接写。
单个字符:单引号包围。
多个字符:双引号包围。
真假:true,false。
空:null。

public class Main {
    public static void main(String[] args) {
        System.out.println(123);
        System.out.println(123.456);
        System.out.println('a');
        System.out.println("你好,世界!");
        System.out.println(true);
    }
}

变量

声明格式:
类型 名 = 值。

public class Main {
    public static void main(String[] args) {
        int a=321;
        System.out.println(a);
    }
}

变量值是可以改变的。

public class Main {
    public static void main(String[] args) {
        int a=321;
        System.out.println(a);
        a=456;
        System.out.println(a);
        a=a+1;
        System.out.println(a);
    }
}

变量的规则

声明之后才能使用。
类型和值要一致。
有效范围为所在的大括号内。
不能重复声明同一个变量。
可以不赋值,但使用时必须有值。

关键字

有特殊功能的单词,比如说public,class,int。

标识符

变量名,类名,等等我们取名的规则。

字母,数字,下划线,美元符组成
不以数字开头。
不能是关键字。
大写和小写不一样。

ASCII编码

字符的存储格式,是ASCII编码表中的对应数字。
A:65
a:97
0:48

public class Main {
    public static void main(String[] args){
        //65+1
        System.out.println('A'+1);
    }
}

基本数据类型

整数:
byte,占用1字节
short,占用2字节
int,占用4字节
long,占用8字节

小数:
float,占用4字节
double,占用8字节

字符:
char,占用2字节

布尔:
boolean,占用1字节

整数值默认为int,
long类型要加L。

小数值默认为double,
float类型要加F。

public class Main {
    public static void main(String[] args){
        byte a=1;
        short b=2;
        int c=3;
        long d=4L;
        float aa=1.1F;
        double bb=1.1;
        char aaa='你';
        boolean bbb=true;
    }
}

类型转换

小的类型可以自动转换成大的类型。

在这里插入图片描述

public class Main {
    public static void main(String[] args){
        byte a=1;
        int b=a;
    }
}

多个类型的值参与计算时,小类型会自动转换成大类型。
结果由最高的类型决定。

byte,short,char总是会转成int。
在这里插入图片描述
强制转换:可以把大类型的数据转换成小类型。
格式:(类型)值。
装不下的部分会丢失。

public class Main {
    public static void main(String[] args){
        int a=123123;
        short b=(short) a;
        //-7949
        System.out.println(b);
    }
}

运算符

算术运算符

加减乘除,取余。

整数相除还是整数。
想得到小数的话,乘1.0即可。

public class Main {
    public static void main(String[] args){
        int a=10;
        int b=4;
        System.out.println(a+b);//14
        System.out.println(a-b);//6
        System.out.println(a*b);//40
        System.out.println(a/b);//2
        System.out.println(1.0*a/b);//2.5
        System.out.println(a%b);//2
    }
}

字符串作加法,会拼接字符串。

自增自减

放在变量前面或者后面,让该变量加一或者减一,组成表达式的值有区别。

假设a=10。
a++,a会变成11,表达式的值为10
++a,a会变成11,表达式的值为11
a–,a会变成9,表达式的值为10
–a,a会变成9,表达式的值为9

public class Main {
    public static void main(String[] args){
        int a=10;
        System.out.println(a++);
        int b=10;
        System.out.println(++b);
    }
}

赋值运算符

a=b
a+=b,等同于a=a+b。
a-=b,等同于a=a-b
a*=b,等同于a=a*b
a/=b,等同于a=a/b
a%=b,等同于a=a%b

结果会强制转换为a的类型。

关系运算符

等于是两个等号,一个等号代表赋值。

public class Main {
    public static void main(String[] args){
        int a=10;
        int b=5;
        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a>=b);
        System.out.println(a<=b);
        System.out.println(a==b);
        System.out.println(a!=b);
    }
}

逻辑运算符

与,&
或,|
非,!
异或,^

双与&&
双或||
功能和与或一致,但效率更高。

三元运算符

布尔值?值1:值2。
整体是表达式,如果布尔值为真,值为值1。
如果布尔值为假,值为值2。


public class Main {
    public static void main(String[] args){
        int a=10;
        int b=5;
        System.out.println(a>b?"好":"不好");
    }//好
}

获取用户的输入

import java.util.Scanner;

public class Main {
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);//初始化
        System.out.println("请输入:");
        String s=sc.next();//获取一行输入
        System.out.println("你输入了:"+s);
    }
}

流程控制语句

顺序
一行一行地执行。

分支
往左走还是往右走。

循环
反复转圈圈。

if

如果真就执行代码a。

int a = 3;
int b = 4;
if (a > b) {
    System.out.println("1");
}

如果真就执行代码a,否则执行代码b。

int a = 3;
int b = 4;
if (a > b) {
    System.out.println("1");
} else {
    System.out.println("2");
}

如果真就执行代码a,为假继续判断。
如果真就执行代码b,否则执行代码c。

int a = 3;
int b = 4;
int c = 2;
if (a > b) {
    System.out.println("1");
} else if (a > c) {
    System.out.println("2");
} else {
    System.out.println("other");
}

switch

根据值来判断走哪边。

public class Main {
    public static void main(String[] args){
        int a=10;
        switch (a){
            case 10:
                System.out.println("a");
                break;
            case 20:
                System.out.println("b");
                break;
            case 30:
                System.out.println("c");
                break;
            default:
                System.out.println("都不是");

        }
    }
}

for

for(a:b:c){
}
a代表初始化语句。
b代表继续循环的条件。
每次循环结束会执行一次c。

public class Main {
    public static void main(String[] args){
        for(int i=0;i<5;i++){
            System.out.println("a");
        }
    }
}

while

while(a){
}
a代表循环的条件。

public class Main {
    public static void main(String[] args) {
        int i = 1;
        while (i <= 10) {
            System.out.println(i);
            i++;
        }
    }
}

do…while

先执行一遍,再while循环。

public class Main {
    public static void main(String[] args) {
        int i = 0;
        do {
            System.out.println(i);
            i++;
        } while (i > 10);
    }
}

break

立即结束当前循环。

i为2时,直接结束整个循环。

public class Main {
    public static void main(String[] args) {
        for (int i = 0; i < 10; i++) {
            if (i == 2) {
                break;
            }
            System.out.println(i);
        }
    }
}

continue

结束本次循环,开始下一次。

i为2时,直接跳转到i为3。

public class Main {
    public static void main(String[] args) {
        for (int i = 0; i < 10; i++) {
            if (i == 2) {
                continue;
            }
            System.out.println(i);
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值