Java中的变量、数据类型和运算符

1. java语言是一种强类型的语言,对各种数据类型都有明确的区分,而计算机使用内存来记忆大量运算时需要使用的数据,而当声明一个变量时,即在内存中划分一块空间存储数据,而变量类型决定划分内存空间的大小。

2.基本数据类型:

byte:最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127

short:短整型,在内存中占2个字节,取值范围-32768~32717

int:整型,用于存储整数,在内在中占4个字节,取值范围-2147483648~2147483647

long:长整型,在内存中占8个字节

float:浮点型,在内存中占4个字节,用于存储带小数点的数字(与double的区别在于float类型有效小数点只有6~7位)

double:双精度浮点型,用于存储带有小数点的数字,在内存中占8个字节

char:字符型,用于存储单个字符,占2个字节

boolean:布尔类型,占8个字节,用于判断真或假(仅有两个值,即true、false)

3.引用数据类型:

数组

String:字符串型,用于存储一串字符

4.变量声明及使用:

(1)声明变量

语法:数据类型 变量名;

(2)给变量赋值

语法:变量名 = 值;

eg:

数据类型 变量名 = 值;

(3)变量名命名规则

1)变量必须以字母、下划线“_”或美元“$”符号开头

2)变量可以包括数字,但不能以数字开头

3)除了“_”或“$”符号以外,变量名不能包含任何特殊字符

4)不能使用Java语言的关键字

常量:常量代表程序运行过程中不能改变的值,定义常量时,需要用final关键字,常量名要大写,多个单词之间用“_”分隔。

语法: final 数据类型 常量名 = 值;

5.运算符

1)赋值运算符

=:将右边的值赋给左边,例:int a = 1;

+=:左右两边的和相加赋给左边,例:int a = 1; a+=2;结果a的值为3

-=:左边减去右边的差赋给左边,例:int a =5;a-=2;结果a的值为3

*=:两边数值相乘的值赋给左边,例:int a = 2;a*=2;结果a的值为4

/=:左边除以右边的值赋给左边,例:int a = 6;a/=2;结果a的值为3

%=:左边除以右边的余数赋给左边,例:int a =7;a%=2;结果a的值为1

2) 算数运算符

“+” 两个数相加

“-”两个数相减

“*”两个数相乘

“/”两个数相除

“++” 自增1

“--”自减1

(i++ 与 ++i的区别)

1)++i 的用法(以 a=++i ,i=2 为例)

先将 i 值加 1 (也就是 i=i+1 ),然后赋给变量 a (也就是 a=i ),

则最终 a 值等于 3 , i 值等于 3 。

所以 a=++i 相当于 i=i+1 ,a=i

2)i++ 的用法(以 a=i++ ,i=2 为例)

先将 i 值赋给变量 a (也就是 a=i ),然后 i 值加 1 (也就是 i=i+1 ),

则最终 a 值等于 2 ,i 值等于 3 。

所以 a=i++ 相当于 a=i , i=i+1

3)++i 与 i++

a=++i 相当于 i++ , a=i

a=i++ 相当于 a=i , i++

4)++i 与 i++ 单独使用时,相当于 i=i+1

如果赋给一个新变量,则 ++i 先将 i 值加 1 ,而 i++ 先将 i 赋给新变量。

注意一:关系运算符

>:大于,例:int a = 1;int b = 2;System.out.print(a > b);其结果为false

<:小于,例:int a = 1;int b = 2;System.out.print(a < b);其结果为true

>=:大于等于,例:int a = 1;int b = 2;System.out.print(a >= b);其结果为false

<=:小于等于,例:int a = 1;int b = 2;System.out.print(a <= b);其结果为true

==:等于,例:int a = 1;int b = 2;System.out.print(a == b);其结果为false

!=:不等于,例:int a = 1;int b = 2;System.out.print(a != b);其结果为true

其结果都是boolean类型,即要么是true要么是false

注意二:逻辑运算符

&&:与、并且(短路), 两个条件同时为真时,结果为真

||:或、或者(短路), 两个条件有一个为真时,结果即为真

!:非,(!+条件) 条件为真时,结果为假

6.Java中的数据类型转换

(1)自动数据类型转换(放大转换)

满足自动数据类型转换条件:

1)两种类型要兼容:如数值类型(整型和浮点型)

2)目标类型大于源类型:例如int型数据可以自动转换为double类型

(2)强制数据类型转换(缩小转换)

在变量前加上括号,在括号中指定要强制转换的类型

例:double a = 40.9;

int b = (int)a;

注:强制转换会损失数值精度,例如double类型变量a,经强制转换为int类型后值变为40

推荐阅读更多精彩内容

  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 1,199评论 0 2
  • 栈 1. 栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被...
    程序员高级码农阅读 4,544评论 0 11
  • 1、 北方的春天浑身都是戏。 从枯枝抽出的第一片绿芽开始,眼见着一抹新绿在枝头晕染开来。渐渐地,白色的、粉色的、红...
    你有哥当年神韵阅读 32评论 0 0
  • 今夜,蓝汐失眠了。 从医院复审回来的路上,蓝汐的心情一直忐忑不安。如果不是上月那次无意的体检,也许蓝汐的脸上依然绽...
    林燕妮2020阅读 316评论 1 1
  • 2013-01-02 1月1日早上,信息组集体去雍和宫。买票的时候没见着黄牛,也许是他们怕遭到佛祖的惩罚吧,抑或黄...
    韩日记阅读 256评论 0 2