Java程序设计基础-基本数据类型及运算符

合集下载

《Java程序设计基础》课程标准

《Java程序设计基础》课程标准

《Java程序设计基础》课程标准一、课程说明二、课程定位《Java程序设计基础》课程是面向软件与信息服务专业学生开设的必修专业课。

通过本课程的学习,能使学生掌握程序设计的基本思想与方法,掌握面向对象编程技术,常用系统类使用,图形用户界面设计,图形处理,多媒体处理,异常处理,文件和流处理,多线程技术和网络编程技术,为学生后续知识(如:Android开发技术)的学习打下基础,同时也为毕业后从事相关专业职业岗位工作具备基本计算机应用能力打下坚实的基础。

三、设计思路《Java程序设计基础》是一门实践性很强的课。

Java语言作为一门经典的面向对象高级程序设计语言其优势在于网络程序设计。

《Java程序设计基础》课程主要侧重于面向对象程序设计和简单网络程序设计实践能力的培养。

该课程的任务,不只是为了要求学生学会使用某种特定的语言,更重要的是要求学生学习面向对象的软件设计思想,以此拓展学生的软件设计的思维空间,训练学生的软件设计的实际开发能力。

在教学过程中注重培养提高学生的职业岗位技能和职业素质,力求达到岗位技能和职业标准。

教学要求在每一章教学内容之后给出,大体分为三个层次:了解、掌握和熟练掌握。

它们的含义大致为:了解就是掌握概念,掌握就是能够理解和分析现有知识,熟练掌握就是会运用所学知识解决实际问题。

四、课程培养目标(一)专业能力1.通过学习使得学生掌握Java开发工具,掌握面向对象程序的基本结构,能够完成基本类的设计和应用。

2.掌握程序设计的基础:基本的数据类型,运算符、表达式和语句。

3.掌握程序设计的结构、设计方法。

4.掌握数组和字符串的使用。

5.掌握继承的概念、能够正确地实现继承。

6.能够准确地理解接口,掌握接口的设计和实现方法。

7.理解异常处理的概念,能够准确地应用异常的处理方法,在未来工作中处理不同异常。

8.掌握集合类的概念和使用方法。

9.掌握图形界面的设计方法,掌握不同组件的功能和使用方法,掌握布局的设计方法。

Java程序设计基础

Java程序设计基础

{
int i = 2;
int j =4;
{ int i = 6; //出错,i已被定义
j = 8;
}
}
……………
36
程序设计基础(2)
——运算符和表达式
主要内容
▪ 运算符 ▪ 表达式
运算符
▪ 对基本数据类型的常量与变量进行加工的过程成
为运算,表示各种不同运算的符号称为运算符, 参与运算的数据称为操作数。
例如,语句: boolean truth=true;
声明变量truth为boolean类型,并将值赋值为 truth。
14
字符类型char
▪ 代表16位的Unicode字符
▪ 字符必须在单引号(‘ ’)内,如:‘a’ , ‘A’
▪ 转义字符:转变其他字符的含义来表示特殊字符,
由单引号括住,以反斜杠“\”开头
11
数据类型
▪ 计算机数据采用二进制表示,如01000011
如果将它理解为ASCII编码的字符,该字符表示 “C”;如果理解为无符号整数,则表示67。
▪ 程序中的数据类型决定了如何将二进制串解释为数
据。
▪ 程序中的任一数据都属于某一特定的类型,类型决
定了他们的表示方式、取值范围以及可用操作。
▪ 类型在程序中的作用类似距离、速度、温度等各种
▪ 空白:空格、制表符、回车、换行以及注释统称
为空白。对编译器而言,空白的唯一作用是分隔 单词,一个空格与三个空格或换行的作用相同。
7
标识符
标识符就是用来标记程序中诸如类、变量、方 法的名字,分为关键字(或保留字)及用户自 定义标识符。
8
标识符的命名规则
▪ 以字母、下划线(_)或$开头 ▪ 后面的字符可以是前面所列的任何字符和数字

Java编程基础及应用第3章运算符、表达式和语句

Java编程基础及应用第3章运算符、表达式和语句

(1)左移位运算符
左移位运算符的符号为“<<”,是二元运算符。左移位运算符左
面的操作元称为被移位数,右面的操作数称为移位量。

例如:a<<n运算的结果是通过将a的所有位都左移n位,每左移一 个位,左边的高阶位上的0或1被移除丢弃,并用0填充右面的低位 。
3.1.5 移位运算符

(2)右移位运算符
3.1.7 条件运算符

条件运算符是一个多元运算符,它的符号是“? : ”,需要连接三
个操作数,用法如下:a?b:c,要求a的值必须为boolean型数据 。运算法则是:当a的值为true时,a?b:c运算的结果是b的值;
当a的值是false时,a?b:c运算的结果是c的值。

例如: 8>2?10:20的结果是10;
// DevideTest2.java public class DevideTest2 { public static void main(String[] args) { int a = 13, b = 4, k; float f1, f2; k = a / b;//整数相除,结果仍为整数 f1 = a / b;//将整数结果强制转换为浮点型 f2 = (float) a / b;//将a强制转换为浮点 型,结果则为浮点型

(4)“按位异或”运算符
“^”是双目运算符。对两个整型数据a、b按位进行异或运算,运 算结果是一个整型数据c。运算法则是:如果a、b两个数据对应位
相同,则c的该位是0,否则是1。

例如:1001001和0101001进行“异或”运算,表达如下, 1001001 ^0101001 1100000

按照运算类型,可以将运算符分成以下几类:算术运算符,关系

高等教育自学考试Java语言程序设计(一)第二章数据和表达式课件

高等教育自学考试Java语言程序设计(一)第二章数据和表达式课件

第二章数据和表达式目录第一节基本语法元素第二节基本数据类型第三节表达式01 基本语法元素1.空白在java程序中,换行符及回车符都可以表示一行的结束,它们可被看作是空白,另外空格键,水平定位键(Tab)亦是空白,编译器会忽略多余的空白。

2.注释(1)单行注释://一行内的注释(2)多行注释:/*一行或多行注释*/(3)文档注释:/**文档注释*/3.语句、分号和块语句是Java程序的最小执行单位,程序的各语句间以分号“;”分隔。

一个语句可以写在连续的若干行内。

大括号“{”和“}”包含的一系列语句称为块语句,简称块。

语句块可以嵌套,即语句块中可以含有子语句块;关键字Java语言定义了许多关键字,关键字也称为保留字,他们都有各自的特殊意义和用途。

*标红的为预留关键字,尚未使用标识符1.标识符是由字母、数字、下划线(_)或美元符($)组成的字符串,其中数字不能作为标识符的开头。

2.标识符区分大小写,长度没有限制。

3.标识符中不能含有其他符号,例如+、=、*、及%等,当然也不允许插入空白。

4.标识符可用作变量名、方法名、接口名和类名。

5.Java源代码采用的是Unicode码,用16位无符号二进制数表示一个字符,Unicode字符集中的字符数可达65535个,汉字也是字符,所以也可以出现在标识符中,例如“这是一个标识符”也是一个正确的标识符。

Java编程风格编写程序时应该注重自己的编程风格,增加必要的注释和空格,采用缩进格式。

定义的各种标识符也要遵从惯例注意大小写。

程序中尽量不使用没有含义的标识符。

最好能望名知义,例如,变量用于计数,可将它命名为counter;用变量保存税率,可将它命名为taxRate。

·类名或接口名:多为名词,含有大小写,每个单词的首字母大写如HelloWorld、Customer、SortClass 等。

·方法名:多是动词,含有大小写,首字母小写,其余各单词的首字母大写。

程序设计基础复习知识点

程序设计基础复习知识点

程序设计基础复习知识点一、基本概念程序设计(Programming)是指编写计算机程序的过程,它是一种将问题转化为计算机可识别并执行的指令集合的过程。

程序设计语言是人与计算机之间进行信息交流的工具,常用的编程语言有C、C++、Java、Python等。

二、变量与数据类型在程序设计中,变量是用于存储数据的一种命名空间。

变量的命名需要遵循规定的命名规则,比如不能用关键字作为变量名,不能包含特殊字符等。

数据类型是变量的属性,决定了变量可以存储的数据种类及所占内存空间大小。

常见的数据类型包括:- 整型(int):用于存储整数。

- 浮点型(float、double):用于存储小数。

- 字符型(char):用于存储单个字符。

- 字符串型(string):用于存储一串字符。

- 布尔型(bool):用于存储真(True)或假(False)的值。

三、运算符和表达式运算符用于对变量或常量进行某种特定的操作,常见的运算符有算术运算符、赋值运算符、关系运算符、逻辑运算符等。

表达式是由运算符和操作数组成的序列,它们可以进行数学运算、逻辑判断等。

四、流程控制流程控制用于决定程序的执行顺序,常见的流程控制结构有条件语句和循环语句。

条件语句(if-else)用于根据条件判断决定执行哪个代码块。

循环语句(for、while)用于根据条件反复执行某一段代码。

五、函数函数是完成特定任务的代码块,通过函数可以实现代码的模块化和复用。

函数由函数名、参数列表和函数体组成。

在程序中,可以通过调用函数来执行其中的代码。

六、数组和指针数组是一种用于存储多个相同类型数据的集合,它的长度在定义时就确定了。

指针是变量,其值为内存中的某个地址,可以用于访问和操作内存中的数据。

七、面向对象编程面向对象编程(OOP)是一种程序设计方法,它将现实世界中对象的特性映射到计算机程序中,通过定义类、对象和其关系来表示和处理问题。

常见的面向对象编程语言有C++、Java、Python等。

java的数字类型

java的数字类型

java的数字类型
Java中的数字类型主要分为整数类型和浮点数类型两大类。

首先是整数类型,Java提供了四种整数类型,byte、short、
int和long。

其中,byte类型占用8位(1字节)存储空间,取值
范围为-128到127;short类型占用16位(2字节)存储空间,取
值范围为-32768到32767;int类型占用32位(4字节)存储空间,取值范围为-2147483648到2147483647;long类型占用64位(8字节)存储空间,取值范围为-9223372036854775808到9223372036854775807。

其次是浮点数类型,Java提供了两种浮点数类型,float和double。

其中,float类型占用32位(4字节)存储空间,单精度
浮点数的取值范围约为1.4E-45到3.4E38,而double类型占用64
位(8字节)存储空间,双精度浮点数的取值范围约为4.9E-324到1.8E308。

除了以上基本的数字类型外,Java还提供了BigDecimal和BigInteger两个类,用于精确的浮点数运算和大整数计算。

BigDecimal可以表示任意精度的十进制数,而BigInteger可以表
示任意精度的整数。

总的来说,Java的数字类型丰富多样,可以满足各种不同精度和范围的数值需求。

在实际编程中,我们需要根据具体的需求选择合适的数字类型来进行数值计算和存储。

第2章Java语言基础

第2章Java语言基础

(1)变量的声明

一般格式为: 其中: modifier为变量的访问修饰符 type为变量的类型 varName为变量名 下面声明了几个不同类型的变量: int age ; double d1,d2 ; char ch1, ch2 ;
[modifier] type varName[=value][,varName[=value]„] ;
2.1.4 浮点数类型


浮点类型的数就是我们所说的实数。 在Java中有两种浮点类型的数据:float型和 double型。 这两种类型的数据在JVM中所占的位数不同, float型占32位,double型占64位。 通常float型称为单精度浮点数,double型称为 双精度浮点数。
1.

常值变量可以在声明的同时赋值,也可以稍后赋 值。不管哪种情况,一旦赋值便不允许修改。
3. 变量及赋值



变量是在程序运行中其值可以改变的量。 一个变量应该有一个名字,在内存中占据一定的 存储单元。 根据变量的数据类型分,Java有两种类型的变量: 基本类型的变量和引用类型的变量。 基本类型的变量包括数值型(整数型和浮点型)、 布尔型和字符型; 引用类型的变量包括类、接口、枚举和数组等。 变量在使用之前必须定义,变量的定义包括变量 的声明和赋值。

(2)变量的赋值



使用赋值运算符“=”来给变量赋值,一般称为变 量的初始化。 如下面是几个赋值语句: age = 21 ; ch1 = 'A' ; d1 = 0.618 ; 也可以在声明变量的同时给变量赋值,例如: boolean b = false ;
2.1.3 整数类型

精品课件-JAVA语言程序设计教程(张席)-第2章

精品课件-JAVA语言程序设计教程(张席)-第2章
26
第2章 数据类型、运算符、表达式和语句 程序运行结果如图2.3所示。
图2.3 一维数组应用举例
27
第2章 数据类型、运算符、表达式和语句 2.5 运算符与表达式
对各种类型的数据进行加工的过程称为运算,表示各 种不同运算的符号称为运算符,参与运算的数据称为操作数。 Java语言运算符如图2.4所示。
byte a=100;
//定义整型变量 a,且赋初值为 100
short b=1000; //定义整型变量 b,且赋初值为 1000
int c=10000;
//定义整型变量 c,且赋初值为 10000
long d=100000L; //定义整型变量 d,且赋初值为 100000
float e= 5.12f ; //指定变量 e 为 float 型,且赋初值为 5.12
char byte、short byte、short、int byte、short、int、long byte、short、int、long、float
int int long float double
17
第2章 数据类型、运算符、表达式和语句
2.3.2 强制类型转换
高优先级数据要转换成低优先级数据,需用到强制类型转换,
其转换格式为
(类型名)(数据或表达式)
例如:
int x;
short a=(short)x;
/*把int型变量x强制转换为short
型*/
18
第2章 数据类型、运算符、表达式和语句 2.4 数 组
2.4.1 数组的概念 数组是相同类型的数据按顺序组成的一种复合数据类型,通
过数组名加数组下标来使用数组中的数据,下标从0 开始。
21
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java 的数据类型是以补码的形式存放在内存中的, 以 short 为例,它有 16 位,能存储的最小数是:
这个数是-216,换算成十进制数就是-32768。
它能存储的最大数是:
这个数是 216-1,换算成十进制数就是 32767。其 他的数据类型范围与此相似,读者可以按照这个方式进 行换算。在 Java 中,高位是符号位,1 表示负数,0 表示整数。
3.变量赋值
变量的赋值使用“=”表示,该符号表示告诉 Java 虚拟机我想将后面的值交给前面的变量进行保存。需要 注意,变量的赋值操作会进行类型安全检查,如果你定 义的变量是 char 类型的,但赋予该变量一个 boolean 类型的值,Java 编译器就会抛出异常!
赋值语句如下;
< variable > = < expression >;
u案例 2-3 获取基本数据类型的范围值 运行结果如图 2-3 所示。
图 2-3 运行结果
包装类一般是对应基本数据类型的首字母大写,但由 于 int 类型和 char 类型较为特殊,其对应的包装类分 别是 Integer 和 Character。通过包装类的基本方法可 以获取其对应的基本数据类型的阈值。去除这些,包装类 还有一些转换的方法,例如 parse()和 valueOf()方法。 其具体转换方法的应用请参看案例 2-4。
2.1.1 基本数据类型分类
Java 的基本数据类型可以分为 3 大类,分别是字符 类型(char)、布尔类型(boolean)和数值类型(byte、 short、int、long、float 和 double)。数值类型又分 为整数类型(byte、short、int 和 long)和浮点类型( float和 double)。Java 中的数值类型不存在无符号的, 其取值也是固定范围的,不会随着机器硬件环境或操作系 统的改变而改变。
2.1.3 拓展:Integer 的 parse()和 value ()使用
Integer的parseInt()和valueOf()方法都可以将字符串 转换成Integer类型的值,在对字符串的处理方面,valueOf ()一般会调用 parseInt()方法,但是何时使用 parseInt(), 何时使用 valueOf()呢?
在学习基本数据类型拆装箱之前,需要知道 Java 中的变量、声明变量和变量赋值操作。
1.变量
基本数据类型的数据可以作为变量(variable)存储 在计算机内存中。变量是一个有名称和类型的内存空间, 用于存储一个值。如同一个图书馆,为了便于图书的检索 和存放,会使用图书编号来方便管理,变量也具有这种理 念。唯一不同的是,Java 是类型安全的,所以,你不仅需 要指定变量的名称,还要有变量的数据类型,就好比图书 编号加上图书的上架类别一样。
此时需要深入查看 API,通过查阅 API 不难发现:
public static Integer valueOf(String s) throws NumberFormatException {
return Integer.valueOf(parseInt(s, 10));
}
其实 valueOf()方法最终还是需要使用 parseInt() 方法的,这里还用到了 valueOf()方法,进入这个方法, 可以看到如下内容:
u案例 2-2 基本数据类型的拆装箱 运行结果如图 2-2 所示。
图 2-2 运行结果
通过案例 2-2 可以发现,基本数据类型和包装类 型可以自由地相互转换,这个特性使得 Java 中的基本 数据类型有了对象的特征,对象可以给基本数据类型很 多的属性和方法,其中最简单的就是获取每种基本数据 类型的一些最大最小值或者其他的一些方法。获取基本 数据类型的范围值如案例 2-3 所示。
2.声明变量
变量的存在就是为了告诉程序,我是谁和我的数据 类型是什么,所以,你需要发表一个声明,告诉程序你 要声明一个变量,这个变量叫什么,将要存储什么样的 数据,如下所示。
< 类型 > < 名称 >;
需要注意的是,每个变量名称只能声明一次,否则 Java 编译器会报错,这就好像你无法让一个人既是张 三又是李四。类型可以使用 Java 的八种基本数据类型 的名字来表示。变量一旦声明了,Java 就会为它分配 一段内存空间用来存储值,但是仅仅是变量的声明并不 能让 Java 向变量对应的内存空间存放初始值,仅仅是 声明的变量被称为未初始化的变量,这种变量需要对其 进行赋值操作之后才能使用。
Tips:与 C 和 C++不同,Java 中没有无符号型 整数,而且明确规定了各种整型类型所占据的内存字节 数,这样就保证了平台无关性。
2.浮点型
Java 使用浮点类型来表示实数。浮点类型也有两 种:单精度数和双精度数,分别使用 float 和 double 来表示。
浮点类型的相关参数如表 2-2 所示。
表 2-2 浮点。值得注意的是, 程序开发中需要将整数当作一种类型, 而实数当作另一种类型,因为整数和 实数在计算机内存中的表示方法截然 不同:整数是精确存储,而实数只是 一个近似值。
3.字符型
Java 中的字符型用 char 来表示。和 C/C++不同 的是,它使用两个字节(16 位)来存储一个字符,而 且存放的并非 ASCII 码而是 Unicode 码。Unicode 码是一种在计算机上使用的字符编码,其为每种语言定 义了统一且唯一的二进制编码,以满足跨语言、跨平台 进行文本转换处理的需求。Unicode 码和 ASCII 码是 兼容的,所有的 ASCII码字符都会在高字节位添加 0, 成为 Unicode 码,例如 a 的 ASCII 码是 0x61,在 Unicode 中,编码是 0x0061。
4.布尔型
布尔类型使用 boolean 来表示,它的值只有 true 和 false,它是用来处理逻辑的,又被称为逻辑类型,true 和 false 分别表示条件成立或者条件不成立。
2.1.2 基本数据类型的拆装箱
因为基本数据类型的使用场景受限,Java 对基本 数据类型进行了封装,将其装箱成为一个复合数据类型, 这样,基本数据类型就可以依靠快速拆装箱的操作转换 身份,同时享有复合数据类型的特殊特性和基本数据类 型的便捷性。
1.整型
Java 中的整型也可以分为以下 4 种类型。 l 基本型:以 int 表示。 l 短整型:以 short 表示。 l 长整型:以 long 表示。 l 字节型;以 byte 表示。
Java 中,整型的取值范围是固定的,所以其占用的 内存大小也是固定的,其内存占用大小如表 2-1 所示。
表 2-1 Java 中整型的取值范围和占用空间大小
u案例 2-4 包装类的转换方法 运行结果如图 2-4 所示。
图 2-4 运行结果
字符串将在第 4 章讲解,此处读者仅需要了解,字 符串类型使用 String 来标识,其值使用双引号包裹, 如案例中使用的:
String intValue = "100";
几乎每个包装类型都有 parse()方法,可以将字符 串类型的数据转换成基本数据类型,因网络传输中都是 使用字符串来传输的,包装类型在处理这种情况时就格 外有效。包装类型还有一些其他的属性和方法,有兴趣 的读者可以查阅相关文档进行学习。
为此,Java 提供了符号常量,即使用标识符来表 示一个常量。因常量的标识符一般是有意义的字符串, 所以非常便于理解。例如:
final int MALE = 1;
final int FEMALE = 0;
这样通过符号常量就可以知道该值所代表的意义, 而且更便于后期的维护。不同于变量的首单词小写,其 后单词首字母大写的“驼峰模式”,常量的单词都使用 大写,如果有多个单词,一般使用“_”进行分割。另外, 常量需要在声明时赋值。
赋值语句可以同声明语句同时使用,即你可在声明 一个变量的时候就为这个变量赋值:
< type> < variable > = < expression >;
与变量相对的是常量。常量是指程序运行过程中, 其值不能被改变,这一点是不同于变量的,变量的值则 是可以根据需要进行改变的。
开发中有时需要一个特殊的常量表示一定的意义, 比如使用 0 表示女性,1 表示男性等,但是这些数据 因为无法表示其真实的意义,给程序的维护带来了很大 的不便,因为你不知道之前的开发者定义的 0 和 1 到 底是指性别还是指身高、学历等,所以也被称为“神仙 数”,意思为只有神仙才能看得懂其含义。
cache[k] = new Integer(j++);
此处可以看出来 Integer 类型也有常量池。这个常 量池是-128~127,在这个范围内的整型包装类型是默认从 缓冲池中获取的,所以,在可以确定转换的数字值大部分 分布在缓冲池中的情况下,那么使用 valueOf()明显比parseI ()更加合适,因为此时返回的是内存中已经缓存的对象, 无需额外的资源开销。
public static Integer valueOf(int i) {
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i);
}
此处发现了 IntegerCache,从代码中可以看出,
IntegerCache 是一个已经预先初始化的数字常量池: static final int low = -128; static final int high; …
int h = 127; … for(int k = 0; k < cache.length; k++)
相关文档
最新文档