类型转换

  • 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。

java foreach无法给外部变量赋值_Java

  • 运算中,不同类型的数据先转换为同一类型,然后计算
  • 强制类型转换
    语法:(类型)变量名 高—低

java foreach无法给外部变量赋值_Java_02

  • 自动类型转换
    可以直接转换 低—高

注意点:

  1. 不能对布尔类型进行转换
  2. 不能把对象类型转换为不相干的类型
  3. 在把高容量转换到低容量的时候,要进行强制转换
  4. 转换的时候可能存在内存溢出,或者精度问题
  5. 操作比较大的数的时候,注意溢出问题

java foreach无法给外部变量赋值_首字母_03

  1. JDK7新特性,数字之间可以用下划线分割

java foreach无法给外部变量赋值_类型转换_04

变量

  • 变量是什么:就是可以变化的量
  • Java是一种强类型语言,每个变量都必须声明其类型。
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域

java foreach无法给外部变量赋值_类型转换_05

  • 注意事项:
  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
  • 变量名必须是合法的标识符。
  • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束

在定义变量的时候要注意,尽量不要一行定义多个变量,为了保证程序的可读性

java foreach无法给外部变量赋值_Java_06

作用域

  • 类变量
  • 实例变量
  • 局部变量
public class Variable {
    static int allClicks = 0; //类变量
    String str = "helloWorld"; //实例变量:从属于对象;如果不自行初始化,则为这个类型的默认值
    //布尔值:默认值为 false
    //除了基本类型,其余的默认值都是null
    public void method() {
        int i = 0; //局部变量,必须声明和初始化值
    }
}

常量

  • 常量(Constant):初始化 (initialize) 后不能再改变值,不会变动的值。
  • 所谓常量可以理解为一种特殊的变量,它的值被设定后,在程序运行过程中不运行被改变。
final 常量名 = 值;
final double PI = 3.14;
  • 常量名一般使用大写字符

变量名前面的交修饰符(修饰符不存在先后顺序)

java foreach无法给外部变量赋值_类型转换_07

变量的命名规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰命名原则:monthSalary
    (驼峰命名原则:首字母小写,后面的单词首字母大写)
  • 局部变量:首字母小写和驼峰命原则
  • 常量:大写首字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰命名原则:Man,GoodMan
  • 方法名:首字母小写和驼峰命名原则:run(),runRun()

运算符

  • Java语言支持如下运算符:
  • 算术运算符:+、-、*、/、%、++、–
  • 赋值运算符:=
  • 关系运算符:>、<、>=、<=、==、!=、instanceof
  • 逻辑运算符:&&(如果第一个是false则后面的代码不会执行)、||、!
  • 位运算符:&、|、^、~、>>(右移)、<<(左移)、>>>(了解)
  • 条件运算符 ?:
  • 扩展赋值运算符:+=、-=、*=、/=

短路运算:&&如果第一个是false则后面的代码不会执行

java foreach无法给外部变量赋值_首字母_08

左/右移:指的是二进制的左/右移(效率极高)

java foreach无法给外部变量赋值_首字母_09

字符串连接符:+

java foreach无法给外部变量赋值_类型转换_10

java foreach无法给外部变量赋值_类型转换_11

三元运算符:

java foreach无法给外部变量赋值_首字母_12