Java笔记_Day3(变量、数据类型)

昨天毕业设计出错,废了一天…
慢慢来,比较快
~

目录

1. 变量

1.1 变量的概念:

  • 内存中的一个存储区域;
  • 该区域的数据可以在同一类型范围内不断变化;
  • 变量是程序中最基本的存储单元。包含变量类型、变量名和存储的值;

1.2 变量的作用:

用于在内存中保存数据。

1.3 声明和赋值变量

1.3.1 声明变量

格式: 类型 变量名 ;
当有多个变量同属一个类型时,各变量可在同一行定义,只需用,隔开即可。
eg:

int a, b, c ;

1.3.2 变量的赋值

格式: 变量名称 = 初始化值
eg:

a = 1;

1.3.3 声明且赋值变量

格式: 数据类型 变量名 = 初始化值
eg:

int a = 1;

注:

  • 变量必须先声明,后使用,不然会报编译错误;
  • 变量都定义在其作用域内,在作用域内,它才是有效的;
  • 同一个作用域内,不能定义重名的变量;
  • 需要注意的是,变量可以连续声明,但不可连续赋值。
    eg:
int a = b = c =1;//编译不通过

2. Java中定义的数据类型

2.1 变量按数据类型来分:

基本数据类型 vs 引用数据类型

2.1.1 基本数据类型

  • 整型:byte(1字节=8bit(-128 ~ 127)) \ short(2字节) \ int(4字节) \ long(8字节)
  • 浮点型:float(4字节) \ double(8个字节)
  • 字符型:char(1字符 = 2字节)
  • 布尔型:boolean
2.1.1.1 整型:

注:
声明long型变量,必须以 lL 结尾;
通常,定义整型变量时,使用int型。

2.1.1.2 浮点型:

注:
浮点型,表示带小数点的数值;
float表示的数值的范围比long还大。
定义float类型变量时,变量要以 fF 结尾
通常,定义浮点型变量时,使用double(不仅范围比float大,而且精度还更高,最重要的是还省了写“f”;妥妥别人家的孩子,谁不喜欢呢~)

2.1.1.3 字符型:

定义char型变量,通常使用一对''内部只能写一个字符。

表示方式:

  • 声明一个字符
  • 转义字符

eg:

'\n','\t'

直接使用Unicode值来表示字符型常量。
eg:

c = '\u0043'//为char型变量c赋值
2.1.1.4 布尔型:

只能取两个值之一,true、false;
常常在条件判断、循环结构中使用。

2.1.2 引用数据类型

  • 类(class)
  • 接口(interface)
  • 数组(array)

String类型变量的使用:

  • String属于引用数据类型,翻译为:字符串;
  • 声明String类型变量时,使用一对" "
  • String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+,运算结果仍然是String类型。

eg:

int i = 1234;
String str = " " + i;//str = "1234"

2.2 变量在类中声明的位置:

成员变量 vs 局部变量

2.3 基本数据类型之间的运算规则:

前提: 这里讨论的只是7种基本数据类型变量间的运算。不包含boolean类型的。

2.3.1. 自动类型提升

  • 当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升位容量大的数据类型。
    byte、char、 short --> int --> long --> float --> double
  • 特别地:当byte、char、 short 三种类型的变量做运算时,结果为int型。
    注:
    此时的容量大小表示数的范围的大小;
    比如:float容量要大于long的容量。

2.3.2. 强制类型转换:自动类型提升运算的逆运算

格式:(欲转换的数据类型)变量名
eg:

int a = 251;
int b = 6;
float f;//f = 41.8333333...
(int)f = a/b;//f = 41

注:

  • 需要使用强转符:()
  • 强制类型转换可能导致精度损失。

2.3.3字符串转换成数据型数据的方法

转换的方法 功能说明
Byte.parseByte(String s) 将数字字符串转换为字节型数据
Short.parseShort(String s) 将数字字符串转换为短整型数据
Integer.parseInt(String s) 将数字字符串转换为整型数据
Long.parseLong(String s) 将数字字符串转换为长整型型数据
Float.parseFloat(String s) 将数字字符串转换为浮点型数据
Double.parseDouble(String s) 将数字字符串转换为双精度型数据
Boolean.parseBoolean(String s) 将字符串转换为布尔型数据

eg:

String myNumber = "123.456";
float myFloat = Float.parseFloat(myNumber);//myFloat = 123.456

进制之间的转换这部分内容直接跳过

上一篇:Good Bye 2015 C


下一篇:转 : 配置 mysql-advanced-5.6.21-winx64 免安装版