API

概述

API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的”字典",是JDK提供给我们使用的类的说明文档。这些类底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。

JDK包结构

为了便于使⽤和维护,JDK类库按照包结构划分,不同功能的类划分在不同的包中;
经常使⽤的包如下表所示:

功能
java.util 常⽤⼯具类,如集合、随机数产⽣器、⽇历、时钟等
java.io ⽂件操作、输⼊/输出操作
java.net ⽹络操作
java.math 数学运算相关操作
java.sql 数据库访问
java.text 处理⽂字、⽇期、数字、信息的格式
java.lang 常用类
java.util 工具类
java.io 输入输出相关类
java.sql 数据库相关
java.net 网络相关
java.text 格式化相关

目前所接触过的类 :

System java.lang.System
Scanner java.util.Scanner
Math java.lang.Math
String java.lang.String
Arrays java.util.Arrays
具体API查找步骤
  1. 打开帮助⽂档(已上传至微信公众号回复API获取)
  2. 点击显示,找到索引,看到输⼊框。
  3. 你要找谁?在输⼊框⾥输⼊,然后回⻋。
  4. 看包。java.lang下的类不需要导包,其他需要。
  5. 看类的解释和说明。
  6. 学习构造⽅法。
  7. 使⽤成员⽅法
常用类

1.Scanner类
Scanner : 是⼀个可以解析基本类型和字符串的简单⽂本扫描器。例如,以下代码使⽤户能够从System.in中读取⼀个数:

Scanner sc = new Scanner(System.in);
int i = sc.nextInt();

PS : System.in 系统输⼊指的是通过键盘录⼊数据。

2.Random类
此类的实例⽤于⽣成伪随机数。
例如,以下代码使⽤户能够得到⼀个随机数:

Random r = new Random();
//产生一个随机整数
int i = r.nextInt();
//产生一个0~n的随机整数
int j = r.nextInt(int n);

比较Math.random()和Random的使用
1.Math.random() -> 不需要对象,直接调用
Random -> 需要对象
2.Math.random() -> 返回double, 范围固定0~1
Random中的nextInt() -> 返回int, 范围可指定

String类

概述 :
java.lang.String 类代表字符串。Java程序中所有的字符串⽂字(例如 “abc” )都可以被看作是实现此类的实例。
类 String 中包括⽤于检查各个字符串的⽅法,⽐如⽤于⽐较字符串,搜索字符串,提取⼦字符串以及创建具有翻译为⼤写或⼩写的所有字符的字符串的副本。
特点 :
直接赋值的字符串, 都存在字符串常量池中, 优化```java。

String s1 = "abc";
s1 += "d";
System.out.println(s1); // "abcd"
// 内存中有"abc","abcd"两个对象,s1从指向"abc",改变指向,指向了"abcd"。

因为String对象是不可变的,所以它们可以被共享。

String s1 = "abc";
String s2 = "abc";
// 内存中只有⼀个"abc"对象被创建,同时被s1和s2共享。

“abc” 等效于 char[] data = {‘a’ , ‘b’ , ‘c’} 。

例如:
String str = "abc";
相当于:
char data[] = {'a', 'b', 'c'};
String str = new String(data);
// String底层是靠字符数组实现的

字符串不能用 == 来比较

String的构造方法

String s = "hello";
String()
String(String)
String(char[])
String(char[], int offset, int count)
String(byte[])
String(byte[], int offset, int length)

String常用的API

Modifier and Type Method and Description
char charAt(int index)——返回 char指定索引处的值
char[] toCharArray() ——将此字符串转换为新的字符数组
boolean equals(String)——将此字符串与指定对象进行比较
String substring(int start)——返回一个从start下标开始到结束的字符串
String substring(int start, int end)——返回一个从start下标开始到end结束字符串
boolean startsWith(String)——判断此字符串是否以指定的前缀开头
boolean startsWith(String, int offset)——判断在指定索引处开始的此字符串的子字符串是否以指定的前缀开头
boolean endsWith(String)——判断此字符串是否以指定的后缀结尾
int indexOf(char)——返回指定字符第一次出现的字符串内的索引
int indexOf(String)——返回指定子字符串第一次出现的字符串内的索引
int indexOf(int, int fromIndex)——返回指定字符第一次出现的字符串内的索引,以指定的索引开始搜索
int indexOf(String, int fromIndex)——返回指定子串的第一次出现的字符串中的索引,从指定的索引开始
int length()——返回此字符串的长度
boolean equalsIgnoreCase(String)——将此 String与其他 String比较,不区分大小写
String trim()——返回一个字符串,其值为此字符串,并删除任何前导和尾随空格
String concat(String)——将指定的字符串连接到该字符串的末尾
String toUpperCase()——将所有字符转换为大写字符
String toLowerCase()——将所有字符转换为小写字符
String contains——当且仅当此字符串包含指定的char值序列时才返回true
String replace(char oldChar, char newChar) ——返回从替换所有出现的导致一个字符串 oldChar在此字符串 newChar

java.lang.Math:
double Math.random(): 返回0.0~1.0 之间的随机数
double Math.pow(double a, double b): 返回 a 的 b 次幂
java.util.Arrays:
String Arrays.toString(数组): 以[元素1, 元素2]格式打印数组
int[] Arrays.copyOf(int[] src, int newLength)
void sort(int[] arr): 按照升序排序, 只支持基本数据类型和String
java.util.System:
static void arraycopy(int[] src, int srcPos, int[] dest, int destPos, int length)
long currentTimeMillis();

数组 [1,2,3,4,5], 添加一个 6
1.数组扩容: 创建新的数组
int[] arr = {1,2,3,4,5};
arr = new int[6]; // [1,2,3,4,5,0]
2.将原来的元素复制到新数组中

数组赋值:
void System.arraycopy(src, srcPos, dest, destPos, count)

JDK中提供的类(常用API)相关推荐

  1. c++ string replace_JAVA应用程序开发之String类常用API

    [本文详细介绍了JAVA应用开发中的String类常用API,欢迎读者朋友们阅读.转发和收藏!] 1 基本概念 API ( Application Interface 应用程序接口)是类中提供的接口, ...

  2. JDK中提供的实现——通过 java.util.Observable 类和 java.util.Observer 接口定义了观察者模式,只要实现它们的子类就可以编写观察者模式实例

    JDK中提供的实现 在 Java 中,通过 java.util.Observable 类和 java.util.Observer 接口定义了观察者模式,只要实现它们的子类就可以编写观察者模式实例. 1 ...

  3. 为什么jdk中把String类设计成final

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 为什么j ...

  4. 观察者模式--java jdk中提供的支持

    一.简介 观察者设计模式有如下四个角色 抽象主题角色:把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者.抽象主题提供一个接口,可以增加和删除观察者角色.一般用一个抽象 ...

  5. Math工具类常用API使用案例

    对基础API的使用能够熟练掌握,能极大提高开发效率.有些知识是很简单,但并不是我们不学习和掌握它们的借口,越是简单的东西,在关键时刻越是能起到至关重要的作用,就好比我们花很长时间解决的一个BUG,结果 ...

  6. Calendar类常用api

    Calendar类常用api Calendar cal = Calendar.getInstance(); 当前时间 cal.get(Calendar.YEAR) 获取当前时间年 cal.get(Ca ...

  7. 重学Java8新特性(四) : 日期时间API、LocalDateTime、DateTimeFormatter、开发中时间工具类(常用)

    文章目录 一.JDK8中日期时间API的介绍 1.1.LocalDate.LocalTime.LocalDateTime的使用 2.2.Instant类的使用 2.3.DateTimeFormatte ...

  8. java中Arrays类和Math类常用API简介

    Arrays类: java.util.Arrays是一个与数组相关的工具类,提供了许多静态方法对数组进行操作,直接通过类点出来使用,无需创建对象. // 1.Arrays类存在与java.util下, ...

  9. Java日期相关类:Date、SimpleDateFormat和Calendar类常用API代码示例

    Date: 表示特定的瞬间,精确到毫秒,他可以通过方法来设定自己所表示的时间,可以表示任意的时间 Date类的构造方法 Date() :创建的是一个表示当前系统时间的Date对象 Date(long ...

  10. java logging包_用JDK中提供的java.util.logging.*包创建Logger对象----原创

    由于项目中用到了Applet与Servlet之间(客户端用Applet.Server端用Servlet)的通信,要求: 1:>客户端与服务端必须出Log. 2:>浏览器在加载Applet时 ...

最新文章

  1. Python_Note_08Day_10_03_JQuery
  2. 【IBM Tivoli Identity Manager 学习文档】11 TIM设计思路介绍
  3. 三问JavaBean
  4. php剪切文件,C/C++文件剪切复制删除
  5. Python 基本数据类型 (一) - 整数
  6. CAT 3.0 开源发布,支持多语言客户端及多项性能提升
  7. 如何关闭WINDOWS2003 DEP数据保护功能
  8. AQS及其组件的核心原理
  9. Java图片人物照片头像识别
  10. 3D开源游戏引擎(遵循BSD和MIT)
  11. JavaList集合根据ParentId递归【无限套娃】
  12. QEMU虚拟机源码分析概论
  13. JS查询日出日落时间和太阳月亮位置
  14. Google Chrome 源码下载
  15. matlab中sub2ind函数
  16. Win10Chrome调试安卓Chrome
  17. 茶饮品牌搅局咖啡市场,咖啡加盟领域风起云涌
  18. 烽火通信科技股份有限公司
  19. datatable筛选条件_在DataTable中执行DataTable.Select(条件)
  20. Windows上无法使用thread头文件

热门文章

  1. J2EE运动会管理系统(含源码)
  2. 【Java就业培训教程】——String类的学习
  3. 【源码】VB6聊天机器人
  4. ASP.NET Core SignalR +微信小程序整理(一)
  5. Linux操作系统[下载安装][命令][工具使用]
  6. 两种方法,给你的Safari浏览器添加必应/有道/谷歌网页即时翻译插件
  7. hadoop安装教程(一次填完所有的坑)
  8. STC单片机烧录时的坑不要踩
  9. mysql not regexp_Mysql必知必会——使用正则表达式搜索(REGEXP)
  10. 解决学校断网,突破天翼校园,实现共享wifi以及linux下无天翼校园客户端