收藏 分享(赏)

Java语言程序设计基础教程课件(第5章).ppt

上传人:hyngb9260 文档编号:4529234 上传时间:2019-01-02 格式:PPT 页数:68 大小:157.50KB
下载 相关 举报
Java语言程序设计基础教程课件(第5章).ppt_第1页
第1页 / 共68页
Java语言程序设计基础教程课件(第5章).ppt_第2页
第2页 / 共68页
Java语言程序设计基础教程课件(第5章).ppt_第3页
第3页 / 共68页
Java语言程序设计基础教程课件(第5章).ppt_第4页
第4页 / 共68页
Java语言程序设计基础教程课件(第5章).ppt_第5页
第5页 / 共68页
点击查看更多>>
资源描述

1、第5章 Java API,理解Java API的概念 了解Object类 熟悉String类和StringBuffer类 基本数据类型的对象类 Hashtable与Properties类 System类与Runtime类 Date与Calendar,DateFormat类 Math与Random类,5.1 Java API的概念,Java的类库是Java语言提供的已经实现的标准类的集合,是Java编程的API(Application Program Interface),它可以帮助开发者方便、快捷地开发Java程序。这些类根据实现的功能不同,可以划分为不同的集合,每个集合组成一个包,称为类库。

2、Java类库中大部分都是由Sun公司提供的,这些类库称为基础类库。 Java语言中提供了大量的类库共程序开发者来使用,了解类库的结构可以帮助开发者节省大量的编程时间,而且能够使编写的程序更简单更实用。Java中丰富的类库资源也是Java语言的一大特色,是Java程序设计的基础。,Java常用包的简单介绍如下:,1)java.lang包:主要含有与语言相关的类。java.lang包由解释程序自动加载,不需要显示说明。Java语言包(java.lang)定义了Java中的大多数基本类。该包中包含了Object类,Object类是整个类层次结构的根结点,同时还定义了基本数据类型的类,如:String

3、、Boolean、Byter、Short等。这些类支持数字类型的转换和字符串的操作,在前面的章节中已经涉及了部分内容,本章主要介绍该包中的Math类和字符串类。 2)java.io包:主要含有与输入/输出相关的类,这些类提供了对不同的输入和输出设备读写数据的支持,这些输入和输出设备包括键盘、显示器、打印机、磁盘文件等。,Java常用包的简单介绍如下:,3)java.util包:包括许多具有特定功能的类,有日期、向量、哈希表、堆栈等,其中Date类支持与时间有关的操作。 4)java.swing包和java.awt包:提供了创建图形用户界面元素的类。通过这些元素,编程者可以控制所写的Applet

4、或Application的外观界面。包中包含了窗口、对话框、菜单等类。,Java常用包的简单介绍如下:,5)包:含有与网络操作相关的类,如TCP Scokets、URL等工具。 6)java.applet包:含有控制HTML文档格式、应用程序中的声音等资源的类,其中Applet类是用来创建包含于HTML的Applet必不可少的类。 7)java.beans包:定义了应用程序编程接口(API),Java Beans是Java应用程序环境的中性平台组件结构。,5.2 Object类,Object类是Java程序中所有类的直接或间接父类,处在类的最高层次。一个类在声明时若不包含关键字extends,

5、系统就会认为该类直接继承Object类。Object类包含了所有Java类的公共属性和方法,这些属性和方法在任何类中均可以直接使用。 Object类有一个默认构造方法: public Object() /方法体为空 在构造子类实例时,都会先调用这个默认构造方法。,Object类中主要的方法如表5-1所示。,Object类的equals方法比较两个对象是否相等,实现对象上差别可能性最大的相等关系;对于任何非空引用值 x 和 y,当且仅当 x 和 y 引用同一个对象时,此方法才返回 true。 下面主要介绍equals方法和getClass方法的使用。,1equals方法的使用,class ep5

6、_1_a int x = 1; class ep5_1 public static void main(String args) ep5_1_a One = new ep5_1_a();ep5_1_a Two = new ep5_1_a();String a1, a2, a3 = “abc“, a4 = “abc“;a1 = new String(“abc“);a2 = new String(“abc“);System.out.println(“a1.equals(a2)是“ + (a1.equals(a2);System.out.println(“a1=a2是“ + (a1 = a2);Sy

7、stem.out.println(“a1.equals(a3)是“ + (a1.equals(a3);System.out.println(“a1=a3是“ + (a1 = a3);System.out.println(“a3.equals(a4)是“ + (a3.equals(a4);System.out.println(“a3=a4是“ + (a3 = a4);System.out.println(“One.equals(Two)是“ + (One.equals(Two);System.out.println(“One=Two是“ + (One = Two);One = Two;Syste

8、m.out.println(“赋值后,One.equals(Two)是“ + (One.equals(Two);System.out.println(“赋值后,One=Two是“ + (One = Two); ,可以看出,对于字符串变量来说,使用“=”运算符和“equals()”方法来比较,其比较方式是不同的。“=”运算符用于比较两个变量本身的值,即两个对象在内存中的首地址;“equals()”方法比较的是两个字符串中所包含的内容是否相同。对于非字符串类型的变量来说,“=”运算符和“equals()”方法都用来比较其所指对象在堆内存中的首地址,即比较两个类类型的变量是否指向同一个对象。对于a3

9、和a4这两个由字符串常量生成的变量,其所存放的内存地址是相同的。,2getClass方法的使用,【例5_2】getClass方法返回调用该方法所属的类。 class ep5_2_a protected String name;public ep5_2_a(String a) name = a; class ep5_2 public static void main(String args) ep5_2_a One = new ep5_2_a(“abc“);Class b = One.getClass(); / 用变量b调用getClass()方法System.out.println(“对象On

10、e所属的类为:“ + b); ,5.3 String类和StringBuffer类,String类和StringBuffer类主要用来处理字符串,这两个类提供了很多字符串的使用处理方法。String类是不可变类,一个String对象所包含的字符串内容永远不会被改变;而StringBuffer类是可变类,一个StringBuffer对象所包含的字符串内容可以被添加或修改。 String 常量字符串,一旦赋值或实例化后就不可更改。 StringBuffer 可变字符串构造器,如频繁的修改字符串值,可以使用StringBuffer。,5.3.1 String类,java. lang包中的String

11、类代表字符串。Java 程序中的所有字符串字面值(如 “abc“ )都作为此类的实例来实现。字符串是常量,它们的值在创建之后不能改变。因为String对象是不可变的,所以可以共享它们。例如: String str = “abc“; 等效于: char data = a, b, c; String str = new String(data);,1String类常用构造方法:,(1)public String():初始化一个新创建的 String 对象,它表示一个空字符序列。 (2)public String(String original):初始化一个新创建的String对象,表示一个与该参数

12、original相同的字符序列;换句话说,新创建的字符串是该参数字符串的一个副本。由于String是不可变的,不必使用该构造方法,除非需要original 的显式副本。,(3)public String(char value):分配一个新的 String,它表示当前字符数组参数value中包含的字符序列。该字符数组的内容已被复制;后续对字符数组的修改不会影响新创建的字符串。 (4)public String(char value, int offset, int count):分配一个新的 String,它包含来自该字符数组参数的一个子数组的字符。offset 参数是子数组第一个字符的索引,c

13、ount 参数指定子数组的长度。该子数组的内容已被复制;后续对字符数组的修改不会影响新创建的字符串。,(5)public String(byte bytes):初始化一个新创建的 String 对象,方法是使用平台的默认字符集解码字节的指定数组,参数bytes 表示要解码为字符的字节。新的String的长度是一个字符集函数,因此不能等于字节数组的长度。当给定字节在给定字符集中无效的情况下,该构造方法无指定的行为。当需要进一步控制解码过程时,应使用 CharsetDecoder 类。 (6)public String(byte bytes, String charsetName):构造一个新的

14、String,方法是使用指定的字符集解码指定的字节数组。新的String的长度是一个字符集函数,因此不能等于字节数组的长度。当给定字节在给定字符集中无效的情况下,该构造方法无指定的行为。当需要进一步控制解码过程时,应使用 CharsetDecoder 类。,2String类常用方法:,(1)public int length():返回此字符串的长度。 (2)public char charAt(int index):返回指定索引处的 char 值。索引范围为从 0 到 length() - 1。序列的第一个 char 值在索引 0 处,第二个在索引 1 处,依此类推,这类似于数组索引。 (3)

15、public void getChars(int srcBegin,int srcEnd,char dst,int dstBegin):将字符从此字符串复制到目标字符数组。 (4)public boolean equals(Object anObject):比较此字符串与指定的对象。当且仅当该参数不为 null,并且是表示与此对象相同的字符序列的 String 对象时,结果才为 true。,【例5-3】一个说明字符串对象使用equals方法的例子。,class ep5_3 public static void main(String args) String s1, s2;s1 = new S

16、tring(“we are students“);s2 = new String(“we are students“);System.out.println(s1.equals(s2);System.out.println(s1 = s2);String s3, s4;s3 = “how are you“;s4 = “how are you“;System.out.println(s3.equals(s4);System.out.println(s3 = s4); ,5.3.2 StringBuffer类,java.lang包中的StringBuffer类表示可变字符序列。一个类似于 Stri

17、ng 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。 StringBuffer 上的主要操作是 append 和 insert 方法,可重载这些方法,以接受任意类型的数据。每个方法都能有效地将给定的数据转换成字符串,然后将该字符串的字符追加或插入到字符串缓冲区中。append 方法始终将这些字符添加到缓冲区的末端;而 insert 方法则在指定的点添加字符。,1StringBuffer类的常用构造方法,(1)StringBuffer():构造一个其中不带字符的字符串缓冲区,其初始容量为16个字符。 (2)StringBu

18、ffer(int capacity):构造一个不带字符,具有指定容量的字符串缓冲区。 (3)StringBuffer(String str):构造一个字符串缓冲区,并将其内容初始化为指定的字符串内容。,2StringBuffer类的常用方法:,(1)toString():返回此序列中数据的字符串表示形式。 (2)append(boolean b):将 boolean 参数的字符串表示形式追加到序列。 (3)length():返回长度(字符数)。 (4)charAt(int index):返回此序列中指定索引处的 char 值。 (5)setCharAt(int index, char ch):

19、将给定索引处的字符设置为 ch。,(6)getChars(int srcBegin, int srcEnd, char dst, int dstBegin):将字符从此序列复制到目标字符数组 dst。 (7)substring(int start):返回一个新的 String,它包含此字符序列当前所包含的字符子序列。 (8)insert(int offset, String str):将字符串插入此字符序列中。,【例5-6】一个使用StringBuffer类的例子。,class ep5_6 public static void main(String args) StringBuffer st

20、r = new StringBuffer(“62791720“);str.insert(0, “010-“);str.setCharAt(7, 8);str.setCharAt(str.length() - 1, 7);System.out.println(str);str.append(“-446“);System.out.println(str);str.reverse();System.out.println(str); ,5.3.3 String类和stringBuffer类下字符串的区别,String : 常量字符串,一旦赋值或实例化后就不可更改. 字符串缓冲区支持可变的字符串。 如

21、果对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法。,5.4基本数据类型的对象类,Java的基本数据包括byte、int、short、long、float、double、char,Java同时也提供了基本数据类型相关的类,Java语言用包装类来把基本类型数据转换为对象。每个Java基本类型在java.lang包中都有一个相应的包装类,参见表5-2。,表5.2 基本类型与包装类的对应,5.4.1 Double类和Float类,Double类和Float类实现了对double和f

22、loat基本型数据的类包装。 Double 类在对象中包装了一个基本类型 double 的值。每个 Double 类型的对象都包含一个 double 类型的字段。 Double类的构造方法: Double(double num) 构造一个新分配的 Double 对象,它表示基本的 double 参数。此外,该类还提供了多个方法,可以将 double 转换为 String,将 String 转换为 double,还提供了其他一些处理 double 时有用的常量和方法。,Float 类在对象中包装了一个 float 基本类型的值。Float 类型的对象包含一个 float 类型的字段。 Float

23、类的构造方法: Float(double value) 构造一个新分配的 Float 对象,它表示转换为 float 类型的参数。此外,此类提供了几种方法,可在 float 类型和 String 类型之间互相转换,并且还提供了处理 float 类型时非常有用的其他一些常量和方法。,5.4.2 Byte、Integer、Short、Long类,Byte 类将基本类型 byte 的值包装在一个对象中。 Byte 类的构造方法: Byte(byte value) 构造一个新分配的 Byte 对象,以表示指定的 byte 值。一个 Byte 类型的对象只包含一个类型为 byte 的字段。 此外,该类还

24、为 byte 和 String 的相互转换提供了几种方法,并提供了处理 byte 时非常有用的其他一些常量和方法。,Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。 Integer类的构造方法: Integer(int value) 构造一个新分配的 Integer 对象,它表示指定的 int 值。此外,该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法。,Short 类在对象中包装基本类型 short 的值。一个 Short 类型的对象只包含一个

25、 short 类型的字段。 Short类的构造方法: Short(short value) 构造一个新分配的 Short 对象,用来表示指定的 short 值。另外,该类提供了多个方法,可以将 short 转换为 String,将 String 转换为 short,同时还提供了其他一些处理 short 时有用的常量和方法。,Long 类在对象中封装了基本类型 long 的值。每个 Long 类型的对象都包含一个 long 类型的字段。 Long类的构造方法: Long(long value) 构造新分配的 Long 对象,表示指定的 long 参数。此外,该类提供了多个方法,可以将 long

26、转换为 String,将 String 转换为 long,除此之外,还提供了其他一些处理 long 时有用的常量和方法。,5.4.3 Character类,Character 类在对象中包装一个基本类型 char 的值。Character 类型的对象包含类型为 char 的单个字段。 Character 类的构造方法: Character(char value) 构造一个新分配的 Character 对象,用以表示指定的 char 值。Character类还提供了几种方法,这些方法可以直接通过类名调用,用来确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。,【例5-7

27、】一个字符数组大小写转换的例子。,public class ep5_7 public static void main(String args) char a = a, b, c, D, E, F ;for (int i = 0; i a.length; i+) if (Character.isLowerCase(ai) ai = Character.toUpperCase(ai); else if (Character.isUpperCase(ai) ai = Character.toLowerCase(ai);for (int i = 0; i a.length; i+) System.o

28、ut.print(“ “ + ai); ,5.5 Hashtable与Properties类,Java.util包中的Hashtable类实现一个哈希表,该哈希表将键映射到相应的值。任何非 null 对象都可以用作键或值。为了成功地在哈希表中存储和检索对象,用作键的对象必须实现 hashCode 方法和 equals 方法。 Hashtable和HashMap对象可以让你把一个key和一个value结合起来,并用put() 方法把这对key/value输入到表中。然后你可以通过调用get()方法,把key作为参数来得到这个value(值)。只要满足两个基本的要求,key和value可以是任何对

29、象。,为了将一个特定类的对象用做一个key,这个类必须提供两个方法,equals() 和 hashCode()。这两个方法在java.lang.Object中,所以所有的类都可以继承这两个方法; HashCode()方法通过运用对象的内容执行一个哈希函数来生成一个int值。Hashtable和HashMap用这个值来算出一对key/value位于哪个bucket(哈希元)(或列表)中。,5.5.2 Properties 类,Java.util.Properties类是Hashtable的一个子类,设计用于String keys和values。Properties对象的用法同Hashtable的

30、用法相象 Java.util 包中的Properties 类表示了一个持久的属性集,该类继承自Hashtable,Properties可保存在流中或从流中加载,属性列表中每个键及其对应值都是一个字符串。 一个属性列表可包含另一个属性列表作为它的“默认值”;如果未能在原有的属性列表中搜索到属性键,则搜索第二个属性列表。,因为 Properties 继承于 Hashtable,所以可对 Properties 对象应用 put 和 putAll 方法。但强烈反对使用这两个方法,因为它们允许调用方插入其键或值不是 Strings 的项。相反,应该使用 setProperty 方法。如果在“有危险”的

31、Properties 对象(即包含非 String 的键或值)上调用 store 或 save 方法,则该调用将失败。 Properties 类的构造方法: Properties() 创建一个无默认值的空属性列表。,Properties 类提供了几个主要的方法:,(1)getProperty ( String key),用指定的键在此属性列表中搜索属性。也就是通过参数key,得到key所对应的value。 (2)load ( InputStream inStream),从输入流中读取属性列表(键和元素对)。通过对指定的文件(比如说上面的 test.properties 文件)进行装载来获取该文

32、件中的所有键 - 值对。以供 getProperty ( String key) 来搜索。,(3)setProperty ( String key, String value) ,调用 Hashtable 的方法 put 。他通过调用基类的put方法来设置键-值对。 (4)store ( OutputStream out, String comments),以适合使用 load 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。与 load 方法相反,该方法将键 - 值对写入到指定的文件中去。 (5)clear () ,清除所有装

33、载的 键 - 值对。该方法在基类中提供。,5.5.3利用Properties 类读取配置文件信息,【例5_9】一个ep5_9.properties 文件的形式。,# 以下为数据库信息 dbUserName = root dbPassword = root # 以下为服务器信息 ip = 192.168.0.9 host = localhost 配置文件名为ep5_9.properties文件。其中#开始的一行为注释信息;在等号“ = ”左边的我们称之为key,等号“ = ”右边的我们称之为 value。其实就是我们常说的键-值对。 Key就是程序中的变量,而value是根据实际情况配置的值。,

34、2代码实例,【例5_10】一个使用ep5_9.properties文件的示例。,程序的运行结果如下所示:查看ep5_9.properties配置文件,会发现文件已经被重新覆盖,只有两个键-值对: max=1000 min=10 通过上面的例子不难看出,在Java中操作配置文件是非常简单的。在一个需要用到大量配置信息的模块或系统里,有必要封装一个专门的类来使用配置文件。,5.6 System类与Runtime类,Java不支持全局函数和全局变量,Java设计者将一些与系统相关的重要函数和变量收集到了一个System类中,System类中的所有成员都是静态的,当要引用这些变量和方法的时候,直接使用

35、System类名做前缀就可以了。例如以前学习的标准输入和输出。,5.6.1 System类,System类中的几个重要的方法: (1)exit(x)方法: 终止当前正在运行的Java虚拟机。参数用作状态码;根据惯例,非0的状态码表示异常终止。事实上要退出Java程序,可以使用destory()退出一个独立运行的过程。 (2)currentTimeMillis方法: System.currentTimeMillis()产生一个当前的毫秒,这个毫秒就是自1970年1月1日0时起的毫秒数。,【例5_11】返回自程序开始运行起至当前时间的以毫秒为单位的时间值。这是一个long型的大数值,可以用它来检测

36、运行一段程序时所花费的时间。,public class ep5_11 public static void main(String args) long timeTestStart = System.currentTimeMillis();/ 记录开始的时间值System.out.println(“欢迎您!“);long timeTestEnd = System.currentTimeMillis();/ 记录结束的时间值System.out.println(“运行时间是:“ + (timeTestEnd - timeTestStart); ,5.6.2 Runtime类,Runtime类封装

37、了Java命令本身所启动的实例进程,也就是封装了Java虚拟机进程。一个Java虚拟机对应一个Runtime实例对象。Runtime类中的许多方法和System类中的方法相重复,不能直接创建Runtime的实例对象,也就是不能通过new来创建,只能通过Runtime.getRuntime静态方法来活得Runtime实例对象的引用。,Java虚拟机本身就是Windows上的一个进程,这个进程中可以启动其它的windows程序,通过这种方式启动的windows程序实例就称为子进程。Java虚拟机调用Runtime的exec方法可以启动这个子进程,其返回值就是代表子进程的Process对象。,【例5

38、_12】在java程序中启动一个windows记事本程序,并在该运行实例中打开这个java程序的源文件,启动的记事本程序在8秒钟后被关闭。,public class ep5_12 public static void main(String args) Process p = null;try p = Runtime.getRuntime().exec(“notepad.exe c:count.txt“);/ 获得一个Runtime的实例对象并调用exec方法Thread.sleep(8000);p.destroy(); catch (Exception e) e.printStackTrac

39、e(); ,5.7 Date与Calendar类,Java语言提供了以下2个类来处理日期。 java.util.Date:包装了一个long类型数据,表示与GMT(格林威治标准时间)的1970年1月1日00:00:00这一刻所相距的毫秒数。 java.util.Calendar:可以灵活地设置或读取日期中的年、月、日、时、分和秒等信息。,5.7.1 Date类,java.util包中的Date类表示特定的时间,精确到毫秒。 使用Date类的无参数构造方法Date()创建的对象可以获取本地当前时间。 Date() 分配Date对象并初始化此对象,以表示分配它的时间(精确到毫秒)。,在类Date所

40、有可以接受或返回年、月、日期、小时、分钟和秒值的方法中,将使用下面的表示形式: 年份 y 由整数 y - 1900 表示。 月份由从 0 至 11 的整数表示;0 是一月、1 是二月等等;因此 11 是十二月。 日期(一月中的某天)按通常方式由整数 1 至 31 表示。,小时由从 0 至 23 的整数表示。因此,从午夜到 1 a.m. 的时间是 0 点,从中午到 1 p.m. 的时间是 12 点。 分钟按通常方式由 0 至 59 的整数表示。 秒由 0 至 61 的整数表示;值 60 和 61 只对闰秒发生,尽管那样,也只用在实际正确跟踪闰秒的 Java 实现中。于按当前引入闰秒的方式,两个闰

41、秒在同一分钟内发生是极不可能的,但此规范遵循 ISO C 的日期和时间约定。,【例5_13】在下面的例子中,用三种格式输出时间。,import java.util.Date; import java.text.SimpleDateFormat; class ep5_13 public static void main(String args) Date nowTime = new Date();System.out.println(nowTime);SimpleDateFormat matter1 = new SimpleDateFormat(“ time:yyyy年MM月dd日E 北京时间“

42、);System.out.println(matter1.format(nowTime);SimpleDateFormat matter2 = new SimpleDateFormat(“北京时间:yyyy年MM月dd日HH时mm分ss秒“);System.out.println(matter2.format(nowTime);Date date1 = new Date(1000), date2 = new Date(-1000);System.out.println(matter2.format(date1);System.out.println(matter2.format(date2);

43、System.out.println(new Date(System.currentTimeMillis(); ,5.7.2 Calendar类,java.util.Calendar类是一个抽象类。它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。 抽象类不能采用new实例化,但我们可以使用Calendar类的static方法getInstance()初始化一个日历对象,如: Calendar calendar = Calendar.getInstance();,set

44、()和get()方法可用来设置和读取日期的特定部分,比如年、月、日、时、分和秒等。上面的calendar对象可以调用方法: public final void set(int year, int month, int date); public final void set(int year, int month, int date, int hourOfDay, int minute); public final void set(int year, int month, int date, int hourOfDay, int minute, int second);,将日历翻到任何一个时

45、间,参数year取负数时表示公元前。 calendar对象调用方法: public int get(int field); 可以获取有关年份、月份、小时、星期等信息,参数field的有效值由Calendar的静态常量指定,例如: calendar.get(Calendar.MONTH); 返回一个整数,如果该整数是0表示当前日历是在一月,该整数是1表示当前日历是在二月等。,calendar对象调用方法: public long getTimeInMillis(); 返回此calendar 的时间值,以毫秒为单位。,5.8 Math与Random类,java.lang包中的Math 类也称数学类

46、,是一个工具类,它在解决与数学有关的一些问题是有着非常重要的作用。Math 类包含许多用来进行科学计算的类方法,涉及大多数学函数,如sin、cos、exp、abs等,这些方法可以直接通过类名调用。Math类还提供了Math.PI和Math.E两个静态数学常量:E和PI。它们的值分别为2.7182828284590452354和3.14159265358979323846,该类是final的,不能被继承,类中的方法和属性全部是静态,不允许在类的外部创建Math类的对象。因此,只能使用Math类的方法而不能对其作任何更改。,5.8.1 Math类,表5-3 Math类的主要方法,使用这些方法时,用

47、法为Math.* (*为方法名)。用法如:int a=Math.abs(124);int b=Math.floor(-5.2);double s=Math.sqrt(7);,【例5-15】Math类主要方法的举例。,class ep5_15 public static void main(String args) System.out.println(“Pi=“ + Math.PI);System.out.println(“E=“ + Math.E);System.out.println(“abs(-6.8)=“ + Math.abs(-6.8);System.out.println(“cei

48、l(6.8)=“ + Math.ceil(6.8);System.out.println(“floor(8.6)=“ + Math.floor(8.6);System.out.println(“max(-5,-6)=“ + Math.max(-5, -6);System.out.println(“min(5,6)=“ + Math.min(5, 6);System.out.println(“round(8.6)=“ + Math.round(8.6);System.out.println(“sqrt(16)=“ + Math.sqrt(16);System.out.println(“exp(1

49、)=“ + Math.exp(1);System.out.println(“log(e)=“ + Math.log(Math.E);System.out.println(“pow(2,3)=“ + Math.pow(2, 3);System.out.println(“sin(30degree)=“ + Math.sin(Math.toRadians(30);System.out.println(“atan(90degree)=“ + Math.atan(Math.PI / 2); ,5.8.2 Random类,java.util包中的Random类,此类的实例用于生成伪随机数流。Random 类所实现的算法使用一个protected实用工具方法,每次调用它都可提供最多 32 个伪随机生成的位。 构造方法: Random(); 创建一个新的随机数生成器。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > Java

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报