Java基础知识快速盘点(二)

一,类型转换
  • 隐式转换

    • 将一个类型转换为另一个类型时,系统默认转换
    • 常量优化机制
    • 算术运算时类型的隐式转换(byte,short在算术运算时都会转换为int)
    • char类型在进行运算时会根据其编码值进行运算
  • 显式转换

二,操作符和运算符

% 取余运算,结果的正负取决于%左侧的数值的正负

++,-- 自增和自减

  • 单独出现时,直接进行相应的自增和自减运算
  • 参与运算或操作时,在前和在后分开讨论
    • 在后,先进行相应的运算或操作,再进行自增或自减
    • 在前,先进行自增或自减,再进行运算或操作

逻辑运算符:&& ||

  • 两者遵从短路运算规则

位运算符:& |

  • 不遵从短路运算规则

位运算符:^

  • 相同为0,不同为1

  • 交换两个变量的值

    a = a ^ b;
    b = a ^ b;
    a = a ^ b;
    

位运算符:<< >> <<< >>>

  • << >> 有符号左右位移
  • << 相当于乘以2的n次幂
  • >> 相当于除以2的n次幂
  • <<< >>> 无符号左右位移

三目运算符:? :

  • ? 前为布尔表达式
  • :两侧为语句
三,参数传递
  • 值传递
    • 方法调用的过程中,基本类型的变量在参数传递的过程中采用值传递
    • 值传递在方法中操作传递的值的时候不会影响原来的变量的值
  • 引用传递
    • 方法调用的过程中,引用类型的变量采用引用传递
    • 引用传递在操作传递的引用时,由于该引用指向的堆空间和原先的引用类型的变量指向的堆空间是同一个,操作的过程会改变堆空间中的内容,影响原内容
四,流程控制

分支

  • if … else
if (表达式) {
	语句
} else {
	语句
}
  • if… else if … else
if (表达式) {
	语句
} else if (表达式) {
	语句
}
...
else {
	语句
}
  • switch… case
switch (变量) {
	case:语句
	...
	default: 语句
}

循环

  • for循环
for(初始化语句;语句;语句) {
	语句
}
  • while 和 do… while
while (表达式) {
	语句
}

do {
	语句
} while(表达式);
五,数组

动态初始化

数据类型[] 数组名 = new 数组类型[数组长度];
  • 用户只能指定数组长度,内存空间由系统进行分配

静态初始化

数组类型[] 数组名 = new 数组类型[]{元素1, 元素2....};    // 格式一
数组类型[] 数组名 = {元素1, 元素2....};    // 格式二

属性

  • length 数组长度

数组下标

  • 最大的数组下标 = length - 1

数组拷贝

  • System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length);
    
  • Arrays工具类
    
六,可变参数

可变参数的本质是数组

可变参数只能在参数的最后

七,类

类是一类具有相同特征的事物的抽象

类是Java编程最小单元

对象是类的具体实例

// 在创建类的对象时,jvm会在堆区开辟一块内存空间,并返回该类的引用赋值给该类的引用变量
Student stu = new Student();  

this

  • this表示当前调用该方法的对象
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值