需要更好的阅读的体验请移步 👉 小牛肉的个人博客 👈
文章目录
-
- 1. Scanner 类
-
- 导包
- 作用
- 构造方法
- 成员方法
- 实例
-
-
- 匿名对象作为参数
- 匿名对象作为返回值
-
- 2. Random 类
-
- 导包
- 作用
- 构造方法
- 成员方法
- 实例
- 3. ArrayList 类
-
- 导包
- 作用
- 构造方法
- 成员方法
- 实例
- 如何存储基本数据类型
- 4. String 类
-
- 导包
- 作用
- 构造方法
- 成员方法
- 实例
- 5. static 关键字
- 6. Arrays 类
-
- 导包
- 作用
- 操作数组的方法
- 实例
- 7. Math 类
-
- 导包
- 作用
- 基本运算的方法
- 实例
API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的 字典 ,是JDK中提供给 我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学 习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。
1. Scanner 类
导包
java.util.Scanner;
作用
一个可以解析基本类型和字符串的简单文本扫描器。
构造方法
public Scanner(InputStream source)
: 构造一个新的 Scanner ,它生成的值是从指定的输入流扫描的。
成员方法
-
将输入信息的下一个标记扫描为一个 int 值。public int nextInt()
实例
例如,以下代码使用户能够从 System.in 中读取一个数:
Scanner sc = new Scanner(System.in);
int i = sc.nextInt(); // 接收一个键盘录入的整数
匿名对象作为参数
class Test {
public static void main(String[] args) {
input(sc); //匿名对象作为方法接收的参数
input(new Scanner(System.in));
}
public static void input(Scanner sc){
System.out.println(sc);
}
}
匿名对象作为返回值
class Test2 {
public static void main(String[] args) { // 普通方式
Scanner sc = getScanner();
}
public static Scanner getScanner(){ //普通方式
return new Scanner(System.in);
}
}
2. Random 类
导包
java.util.Random
作用
用于生成伪随机数
构造方法
public Random()
:创建一个新的随机数生成器。
成员方法
public int nextInt(int n)
:返回一个伪随机数,范围在 0 (包括)和 指定值 n (不包括)之间的 int 值。
实例
使用Random类,完成生成3个10以内的随机整数的操作
3. ArrayList 类
导包
java.util.ArrayList
作用
大小可变的数组的实现,存储在内的数据称为元素。此类提供一些方法来操作内部存储 的元素。 ArrayList 中可不断的添加元素,其大小也自动增长。(类似于C++中的
vector
)
构造方法
public ArrayList()
:构造一个内容为空的集合。
基本格式:
在JDK 7后,右侧泛型的尖括号之内可以留空,但是<>仍然要写:
成员方法
-
: 将指定的元素添加到此集合的尾部。 参数 E e ,在构造ArrayList对象时, 指定了什么数据类型,那么 add(E e) 方法中,只能添加什么数据 类型的对象。public boolean add(E e)
-
:移除此集合中指定位置上的元素。返回被删除的元素。public E remove(int index)
-
:返回此集合中指定位置上的元素。返回获取的元素。public E get(int index)
-
:返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。public int size()
实例
如何存储基本数据类型
ArrayList对象不能存储基本类型,只能存储引用类型的数据。类似 不能写,但是存储基本数据类型对应的 包装类型是可以的。所以,想要存储基本类型数据, <> 中的数据类型,必须转换后才能编写,转换写法如下:
4. String 类
导包
java.lang.String
所有 java.lang 包的下类都无须进行导包
作用
Java程序中所有的字符串文字(例如 “abc” )都可以被看作是实现此类的实例。
类 String 中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取子字符串以及创建具有翻 译为大写或小写的所有字符的字符串的副本。
构造方法
-
:初始化新创建的 String对象,以使其表示空字符序列。public String()
-
:通过当前参数中的字符数组来构造新的String。public String(char[] value)
-
:通过使用平台的默认字符集解码当前参数中的字节数组来构造新的 String。public String(byte[] bytes)
// 无参构造
String str = new String();
// 通过字符数组构造
char chars[] = {'a', 'b', 'c'};
String str2 = new String(chars);
// 通过字节数组构造
byte bytes[] = { 97, 98, 99 };
String str3 = new String(bytes);
成员方法
判断
-
:将此字符串与指定对象进行比较。public boolean equals (Object anObject)
-
:将此字符串与指定对象进行比较,忽略大小 写。public boolean equalsIgnoreCase (String anotherString)
获取
-
:返回此字符串的长度。public int length ()
-
:将指定的字符串连接到该字符串的末尾。public String concat (String str)
-
:返回指定索引处的 char值。public char charAt (int index)
-
:返回指定子字符串第一次出现在该字符串内的索引。public int indexOf (String str)
-
:返回一个子字符串,从beginIndex开始截取字符串到字符 串结尾。public String substring (int beginIndex)
-
:返回一个子字符串,从beginIndex到 endIndex截取字符串。含beginIndex,不含endIndex。public String substring (int beginIndex, int endIndex)
转换
-
:将此字符串转换为新的字符数组。public char[] toCharArray ()
-
:使用平台的默认字符集将该 String编码转换为新的字节数组。public byte[] getBytes ()
-
:将与target匹配的字符串使 用replacement字符串替换。public String replace (CharSequence target, CharSequence replacement)
分割
-
:将此字符串按照给定的regex(规则)拆分为字符串数组。public String[] split(String regex)
实例
键盘录入一个字符,统计字符串中大小写字母及数字字符个数
5. static 关键字
基本和C++中一样,此处就不多说了 (不理解的可以去找我的C++复习总结回顾系列)
注意一下Java中的 静态代码块
静态代码块:定义在成员位置,使用static修饰的代码块{ }。
位置:类中方法外。
执行:随着类的加载而执行且执行一次,优先于main方法和构造方法的执行。
6. Arrays 类
导包
java.util.Arrays
作用
此类包含用来操作数组的各种方法,比如排序和搜索等。
其所有方法均为静态方法,调用起来非常简单。
操作数组的方法
-
:返回指定数组内容的字符串表示形式。public static String toString(int[] a)
-
:对指定的 int 型数组按数字升序进行排序。public static void sort(int[] a)
实例
将一个随机字符串中的所有字符升序排列,并倒序打印
7. Math 类
导包
java.lang.Math
可不导
作用
java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。类似这样的工具 类,其所有方法均为静态方法,并且不会创建对象,调用起来非常简单。
基本运算的方法
-
:返回 double 值的绝对值。public static double abs(double a)
-
:返回大于等于参数的最小的整数。public static double ceil(double a)
-
:返回小于等于参数最大的整数。public static double floor(double a)
-
:返回最接近参数的 long。(相当于四舍五入方法)public static long round(double a)
long d1 = Math.round(5.5); //d1的值为6.0
long d2 = Math.round(5.4); //d2的值为5.0
实例
计算在 -10.8 到 5.9 之间,绝对值大于 6 或者小于 2.1 的整数有多少个?