新手21天学java后端-day1语法基础

一、java基础:
1、基础语法:
1.1:注释
//单行注释
/* / 多行注释
* */ 文档注释:一般写在 class、interface、enum、method、属性上面
javadoc -d doc xx.java
1.2:标识符
定义:给 class package interface(接口) enum method field variable 所起的名字,名字就叫标识符。

标识符的命名规则:
1、 不能是数字开头
2、 可以用字母 数字 _ $
3、 大小写敏感
4、 没有长度限制
5、 不能是关键字,保留字
1.3:关键字
关键字:java中有特殊含义的、修饰的单词package public class static int
保留字
1.4:数据类型
1)基本数据类型:
boolean: true | false
char: 单个字符 16 bit(16位二进制)四种赋值方式
整型:
byte: 1字节 8 bit
short: 16bit
int : 32bit
long: 64bit
浮点型:
float: 32bit
double: 64bit

2)引用数据类型
	生活中的对象(事物)------》抽象-------》class(类)------》机器中的对象
	抽象:关注的点抽象出来
1.5:数据类型转化

1、 整型和整型之间,浮点型和浮点型之间窄类型转宽类型,隐式转换
2、 整型和整型之间,浮点型和浮点型之间宽类型转窄类型,显式转换
3、 整型转浮点型隐式转换;浮点型转整型显示转换

1.6:变量
变量:
	数据类型 变量名; 	//声明变量
	变量名=value; 		//第一次赋值,叫初始化
	变量名=value;		//赋值
	数据类型 变量名=value; //声明并初始化

实例变量:

1、 在类中声明的变量,是实例变量
2、 实例变量的作用范围是依赖与实例的(对象);创建类的实例时,类中声明的实例变量存在;对象(实例)引用不到时,实例变量消失。
3、 实例变量在使用之前也要进行初始化;在创建对象(实例),jvm会对对象的实际变量进行默认初始化;不同数据类型的实例变量,默认初始化的值不同
byte int short long 0
float double 0.0
char ‘\u0000’
boolean false
引用类型 null
局部变量:
1、 方法、匿名块、静态块、语句块中定义的变量都是局部变量
2、 声明的位置开始,到变量所在的{ }结束,变量都可以起作用
3、 局部变量在使用之前,必须进行初始化

  1. 1.7:操作符 int i=value a+b=value value=a+b

  2. instanceof 变量 instanceof 数据类型

    (引用类型)变量是否是后面的数据类型,如果是返回 turn;如果不是返回false

  3. 移位运算符:
    >>:右移 <<:左移
    >>>:无符号位右移

    int i=3;
    int res=i>>2;
    0000 ……… 0000 0011

    二进制运算符
    &:与 两个都是1 才为1 其他情况都是0
    |:或 两个都是0 才是0
    ^:异或 相同为0 不同为1
    ~:非

    逻辑运算符:
    &&:逻辑与
    符号两边都是布尔表达式,只有两边都是true ,整体结果为true

    || :逻辑或 符号两边都是布尔表达式;只有两边都是false,结果整体为false

    三目运算符:
    boolean ? value1:value2;
    boolean 如果是true;表达式结果就是:前面的
    boolean 如果是false;表达式结果就是:后面的
    1.8:流程控制语句
    条件控制语句:
    if else
    注意:
    1、如果代码块只有一行代码,可以不用写{};
    2、if的语句块执行完之后,下面的代码还是会执行的

    switch case
    注意:

1、 variable变量必须是 int ;short ;char; byte ;enum ;(jdk1.7)后可使用String 类型
2、 case到的语句块中有break;switch语句结束;如果没有break语句,下面的语句块都要执行,直到遇到break语句,switch语句才结束
3、 default语句块可以放在switch中的任何位置
循环控制语句:
for
for(var;bool;altervar){
block;
}

-while(bool){
block;

}
do while(先判断代码块,在执行布尔类型)
do{
block;
}while(bool);

  • 其他控制语句:
  • break [lable]退出当前循环
    continue[lable]:退出当前循环的当次循环,进入当前循环下一次循环
    1.9:数组 在程序运行当中,临时存放相同数据类型数据的容器;数组也是个对象。 使用容器:

1、 创建容器:
数据类型【】 变量名=new 数据类型【length】
数据类型 变量名【】=new 数据类型【length】
2、 向容器中放数据:数据下标称为:下标或index或索引
变量名【index】=value;
3、 从容器中取数据
变量名【index】
1.10:数组的数组

  1. 声明:
    数据类型【】【】 变量名;
    数据类型 变量名 【】【】;
    初始化数组的数组(创建数组对象):
    数据类型【】【】 变量名=new 数据类型【length】【】;

1)、开辟一个长度为length连续的空间;
2)、准备在每一个空间的位置放一个数组;要放置的数组还没有;所以在长度为length的数组中的每一个位置放一个默认值null
数据类型【】【】 变量名=new 数据类型【length1】【length2】;
1)、开辟一个长度为length1的连续空间
2)、在length1的空间的每一个位置都放置一个长度为length2的数组
3)、对length1对每一个位置中的长度是length2对数组中每一个位置进行初始化
初始化的值由声明数组时的数据类型决定

  1. 获取数据/放数据:
    变量名【index1】【index2】
    length属性: 变量名.length;
    变量名【index1】.length;

    1.11:数组的copy
    

1、 原有的数组长度不够使用的时候;需要创建长度更长的数组来存放更多的数据
2、 把原有数组里面的数据放到新数组;
System.arraycopy(src, src0p, dest, dest0p, length);
src:原有的数组
src0p:要copy原有数组从哪一个位置开始copy
dest:新的数组(copy到的目标数组)
dest0p:要把原有数组中的数据放入目标数组中时,从目标数组的哪一个位置开始
length:要copy的原有数组的数据个数
1.12:可变参数
1、 可变参数必须放在方法后面的小括号中;
2、 如果方法有多个参数,那么可变参数必须作为方法的最后一个参数
3、 调用有可变参数的方法时,可变参数的位置可以传任意一个数据
4、 在有可变参数的方法中使用可变参数时,像使用数组一样使用可变参数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值