Scanner 类
1.什么是Scanner 类
一个可以解析基本类型和字符串的文本扫描器,例如以下代码能使用户能够从System.in 中读取一个数
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
注意:System.in 系统输入指的使键盘输入的值
引用类型的使用步骤
导包
使用import 关键字导包,在类的所有代码之前导包,导入要引用的类型,java.lang 下的包无需导入,格式。
import 包名.类名;
举例
java.util.Scanner;
创建对象
使用该类的构造方法,创建一个该类的对象,格式:
数据类型 变量名 = new 数据类型(System.in);
调用方法
调用该类的成员方法,完成指定的功能,格式
变量名. 方法名();
匿名对象
概念:创建对象时只有创建对象的语句,确没有把对象的地址值赋予给某个变量,虽然是创建对象的简单写法,但是使用场景非常有限。
匿名对象:没有变量名的对象
格式
new 对象名(参数列表);
举例
new Scanner(System.in);
应用场景
创建匿名对象直接调用方法,没有变量名。
new Scanner(System.in).nextInt();
一旦调用两次方法,就是创建了两个对象,造成浪费,请看如下代码
new Scanner(System.in).nextInt();
new Scanner(System.in).nextInt();
3.匿名对象可以作为方法的参数和返回值
作为参数
class Test{
public static void main(String[] args){
//普通方式
Scanner sc = new Scanner(System.in);
input(sc);
//匿名对象作为方法接收的参数
input(new Scanner sc = new Scanner());
}
public static void input(Scanner sc){
System.out.println(sc);
}
}
作为返回值
class Test{
public static void main(String[] args){
//普通方式
Scanner sc = getScanner();
}
public static Scanner getScanner(){
return new Scanner(System.in);
}
}
Random 类
此类用于生成伪随机数,
import java.util.Random;
public class RandomDemo {
public static void main(String[] args) {
Random rm = new Random();
int i = rm.nextInt();
System.out.println(i);
}
}
ArrayList 类
引入—对象数组
1.什么是ArrayList类
java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素,此类提供一些方法来操作内部存储的元素,ArrayList 可不断的添加元素,其长度也会自动增长。
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
String s1="jjj";
String s2="hhh";
list.add(s1);
list.add(s2);
System.out.println(list);
}
}
常用方法和遍历
对于元素的操作,基本体现在增,删,查,常用的方法有
- add(E) :将指定的元素添加到集合的尾部
- remove (index) : 移除指定位置的元素,返回被删除的元素
- get(index): 获得指定位置的元素
- size() :返回集合的元素个数
ArrayList 如何存储基本数据类型
ArrayList 不能存储基本数据类型,只能存储引用数据类型,类似 不能写,但是存储基本数据类型对应的包装类型是可以的。所以存储基本数据类型,必须转换后才能编写,转换写法如下