计算机等级考试二级Java-第二篇:基本数据类型

1.运算符的优先级以及复杂表达式

优先级 运算符 结合性
1 ( ) [ ]  . 从左到右
2 !  ~  ++  -- 从右到左
3 *  /  % 从左到右
4 +  - 从左到右
5 <<  >>  >>> 从左到右
6 <  <=  >  >=  instanceof 从左到右
7 ==  != 从左到右
8 & 从左到右
9 ^ 从左到右
10 | 从左到右
11 && 从左到右
12 || 从左到右
13 ? : 从左到右
14 =  +=  -=  *=  /=  %=  &=  |=  ^=  ~=  <<=  >>=  >>>= 从右到左

在对一个复杂表达式进行运算时,要按照运算符的优先级顺序进行从高到底进行,同级的运算符则按照在表达式中出现的位置从左到右的方向进行。

例如:x>y &&!z

相当于(x>y)&&(!z)

例如:假设int x =1,y=-2,n=10.那么,表达式x+y+(--n)*(x>y&&x>0?(x+1):y)的值int型数据,结果为17。

例题:下列运算符中,优先级最高的是:D

A:+=

B: ==

C &&

D++

2.java 语句

Java的语句可以分为5类

(1)方法调用语句

(2)表达式语句

一个表达式的最后加上一个分号就构成了一个语句,称作表达式语句。分号是语句不可缺少的一部分。

(3)复合语句:可以用"{"和"}"把一些语句括起来构成符合语句,一个符合语句叶称作为一个代码块

比如

{

x=1;

}

(4)控制语句

控制语句包括:条件分支语句,循环语句和跳转语句。

(5)package语句和import语句:与类和对象有关

3.标识符与关键字

什么是标识符?

在Java中变量以及类和方法都需要一定的名称 ,这种名称就叫做标识符。

标识符命名的基本规则:

所有标识符都必须以一个字母,下划线或美元符号$开头,后面的字符可以包含字母,数字,下划线和美元符号。

标识符的命名约定(方便读者阅读)

常量用大写字母,下划线常用于常量名词分隔。

常量用小写字母开始,如果一个常量名由多个名词构成,第一个单词后面的单词以大写字母开始,类以大写字母开始。

什么是关键字?

是Java语言本身使用的标识符,它有其特定的语法含义,Java关键字不能使用做用户标识符,如:for,while,boolean等都是Java语言的关键字。

Java中的关键字有哪些? 1)48个关键字:abstract、assert、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、enum、extends、final、finally、float、for、if、implements、import、int、interface、instanceof、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while。

2)2个保留字(现在没用以后可能用到作为关键字):goto、const。

3)3个特殊直接量:true、false、null。

例题:下列变量名的定义中,符合Java命名约束的是:A

A)filename

B)super

C)int

D)2$number

例题:下列不属于Java关键字的是:

A)this

B)super

C)finally

D)NULL

4.简单数据类型

Java语言提供了两种数据类型:简单类型引用类型

例题:Java中的基本数据类型int在不同的操作系统平台的字长是:

A)不同的

B)32位

C)64位

D)16位

常量

在Java中的常量在程序中为一个标识符,用来记忆一个固定的值。在程序执行过程中常量是不可更改的数据,常量用final声明,常量与变量的区别是前者不占用内存。Java约定常量名称用大写字母。

声明常量的格式:final 类型 常量名 = 值;

布尔类型

只有两个值,true和false,代表了两种状态:真和假,书写时直接使用true和false这两个英文单词,不能加引号。

整型常量

不含小数的整数值,书写时可采用十进制,八进制,十六进制的形式。十进制常量以非0开头后跟多个0~9之间的数字;八进制以0开头后面跟0-7之间的数字;十六进制则以0X开头后面跟多个0~9之间的数字或a~f之间的小写数字或者A~F之间的大写字母。

浮点型常量

有两种表示形式

1.十进制数形式,由数字和小数点组成,且必须由小数点,如.123,0.123,123.0

2.科学计数法形式:如123e3或123E-3,其中e或E之前必须有数,且e或E后面的指数必须为整数。

字符常量

是由一对单引号括起来的单个字符。他可以是Unicode字符集中的任意一个字符,比如'a','b'。对无法通过键盘输入的字符,可用转义符表示。

字符常量的另一种表示就是直接写出字符编码,如字母A的十六进制表示为'\u0041'。

例题:Java中定义常量的保留字是:B

A)const

B)final

C)finally

D)native

例题:下列数中为八进制的是:C

A)27

B)0X25

C)026

D)028

变量

变量在程序中为一个标识符,在内存中是一块空间,它提供了一个临时存放信息和数据的地方,具有记忆数据的功能。变量是可以改变的,它可以存放不同类型的数据,通常用小写字母或单词作为变量名。

变量有三个元素:名称,类型和值。

变量的声明和初始化

在Java中存储一个数据,必须将它保存到一个变量中。变量在使用前 必须有定义,即有确定的类型和名称。

声明变的格式为:类型 变量名 = 【初值】;

变量有一定的生命周期和作用域。变量的作用域是指允许访问变量的代码范围。按作用域来分,变量可以分成局部,变量,类成员变量,方法参数,异常处理参数等几类。

在类中声明的变量称为类的成员变量,通常在类开始处声明,可以在整个类中使用。在方法或语句块中声明的变量称为局部变量,

局部变量在声明时一定要初始化即赋初值。否则程序运行时将出错。

成员变量在声明时可以不初始化,程序运行时,系统会自动进行初始化工作,即给成员变量赋初值。

例题:下列关于Java布尔类型的描述中,正确的是:A

A:一种基本的数据类型,它的类型名称为boolean。

B:用int表示类型。

C:其值可以赋给int类型的变量。

D:有两个值,1代表真,0代表假。

例题:下列整数的定义中,错误的是:A

A:int f = 3.14

B: int a = 012;

C int i = 187;

D int d = 0X123;

5.数据类型的自动转换

Boolean类型不可转换为其它的数据类型。

整型,字符型,浮点型在混合运算中的自动相互转换,应该遵循以下原则。

占位数小的类型字段转换为占位数大的类型。

数据类型按占位数大小排序(小->大)

byte -> short ->(char) ->int ->long ->float->double。

多种类型的数据混合运算时,系统首先自动将所有数据类型转换为占位数最大的那种数据类型,然后在进行计算。

6.强制转换

占位数大的数据类型转换为占位数小的数据类型时,要加上强制转换符,但是可能会造成精度降低或者溢出,使用的时候要注意。

当需要把一个整数变成一个字符型数据使用的时候,也需要将整数类型数据强制转换为字符型数据。

变量类型强制转换的格式为:(数据类型)数据表达式;

7.各种数据类型的转换

涉及byte , short , 和char类型的运算操作首先会把这些值转换成int 类型,然后对int类型值进行运算,最后得到int类型的结果。因此 ,如果把两个byte类型值相加,最后会得到一个int类型的结果。

例题:下列表达式中,类型可以作为int型的是(C)

A)"abc"+"efg"

B)"abc" + 'efg'

C)'a' + 'b'

D)3+"4"

例题:下列关于boolean类型的叙述中,正确的是:D

A)可以将boolean类型的数值转换为int类型的数值

B)可以将boolean类型的数值转换为字符串

C)可以将boolean类型的数值转换为char类型的数值

D)不可以将boolean类型的数值转换为其它基本数据类型

相关推荐
逸风扬8 分钟前
被裁了(9年)
java·程序人生
AskHarries26 分钟前
Spring Boot集成fastjson2快速入门Demo
java·spring boot·fastjson
极客先躯27 分钟前
中级java每日一道面试题-2024年7月3日
java·开发语言·java每日一道面试题
Song29 分钟前
C++:求梯形面积
开发语言·c++
AskHarries43 分钟前
Spring Boot集成geode快速入门Demo
java·spring boot·后端·geode
小哇6661 小时前
SpringBoot整合Minio
java·spring boot·spring
如影随从1 小时前
04-ArcGIS For JavaScript的可视域分析功能
开发语言·javascript·arcgis·可视域分析
XiaoCCCcCCccCcccC1 小时前
C语言实现双向链表
c语言·开发语言·链表
十年一梦实验室1 小时前
【C++】相机标定源码笔记- RGB 相机与 ToF 深度传感器校准类
开发语言·c++·笔记·数码相机·计算机视觉