day07
第1章 API
1.1 概述
API(Application Programming Interface),应用程序编程接口。
所以我们可以通过查询API的方式,来学习和使用Java提供的类。
1.2 API 使用步骤
点击显示,找到索引,看到输入框。
在输入框里输入,然后回车两次。
看包。java.lang下的类不需要导包,其他需要。
构造方法。
成员方法。
第2章 Scanner类
2.1 引用类型使用步骤
除了8个基本数据类型,其他都是引用数据类型
导包
java.lang包下的所有类无需导入。 格式:import 包名.类名;
举例:java.util.Scanner;
创建对象
使用该类的构造方法,创建一个该类的对象。 格式:数据类型 变量名 = new 数据类型(参数列表);
举例:Scanner sc = new Scanner(System.in);
调用方法
调用该类的成员方法,完成指定功能。 格式:变量名.方法名();
举例:int i = sc.nextInt(); // 接收一个键盘录入的整数
2.2 Scanner 使用步骤
查看类
- java.util.Scanner:该类需要import导入后使用。
查看构造方法
- public Scanner(InputStream source):构造一个新的Scanner,它生成的值是从指定的输入流扫描的。
查看成员方法
- public int nextInt():将输入信息的下一个标记扫描为一个int值。
例子:
键盘录入三个数据并获取最大值,代码如下:
import java.util.Scanner;
public class Test02Scanner {
public static void main(String[] args) {
// 创建对象
Scanner sc = new Scanner(System.in);
// 接收数据
System.out.println("请输入第一个数据:");
int a = sc.nextInt();
System.out.println("请输入第二个数据:");
int b = sc.nextInt();
System.out.println("请输入第三个数据:");
int c = sc.nextInt();
// 如何获取三个数据的最大值
int temp = (a > b ? a : b);
int max = (temp > c ? temp : c);
System.out.println("max:" + max);
}
}
2.3 匿名对象【了解】
1.创建匿名对象直接调用方法,没有变量名。
new Scanner(System.in).nextInt();
2.匿名对象可以作为方法的参数和返回值
- 作为参数:
class Test {
public static void main(String[] args) {
// 普通方式
Scanner sc = new Scanner(System.in);
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(){
//普通方式
//Scanner sc = new Scanner(System.in);
//return sc;
//匿名对象作为方法返回值
return new Scanner(System.in);
}
}
第3章 Random类
Random r = new Random();
int i = r.nextInt();
查看类
- java.util.Random :该类需要import导入使后使用。
查看构造方法
- public Random() :创建一个新的随机数生成器。
查看成员方法
- public int nextInt(int n) :返回一个伪随机数,范围在0(包括)和指定值n(不包括)之间的int值。
1.使用Random类,完成生成3个10以内的随机整数的操作,代码如下:
//1. 导包
import java.util.Random;
public class Demo01_Random {
public static void main(String[] args) {
//2. 创建键盘录入数据的对象
Random r = new Random();
for(int i = 0; i < 3; i++){
//3. 随机生成一个数据
int number = r.nextInt(10);
//4. 输出数据
System.out.println("number:"+ number);
}
}
}
2.猜数字小游戏
游戏开始时,会随机生成一个1-100(包含1和100)之间的整数number。玩家猜测一个数字guessNumber,会与number作比较,系统提示大了或者小了,直到玩家猜中,游戏结束。
// 导包
import java.util.Random;
public class Test02Random {
public static void main(String[] args) {
// 系统产生一个随机数1‐100之间的。
Random r = new Random();
int number = r.nextInt(100) + 1;
while(true){
// 键盘录入我们要猜的数据
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要猜的数字(1‐100):");
int guessNumber = sc.nextInt();
// 比较这两个数据(用if语句)
if (guessNumber > number) {
System.out.println("你猜的数据" + guessNumber + "大了");
} else if (guessNumber < number) {
System.out.println("你猜的数据" + guessNumber + "小了");
} else {
System.out.println("恭喜你,猜中了");
break;
}
}
}
}
第4章 ArrayList类
对象数组:数组的长度是固定的
ArrayList类:java.util.ArrayList
是大小可变的数组的实现
查看类
java.util.ArrayList <E>
:该类需要import导入使后使用。
<E>
,表示一种指定的数据类型,叫做泛型。 E ,取自Element(元素)的首字母。在出现 E 的地方,我们使用一种引用数据类型将其替换即可,表示我们将存储哪种引用类型的元素。代码如下:
ArrayList<String>,ArrayList<Student>
查看构造方法
public ArrayList() :构造一个内容为空的集合。
基本格式:
ArrayList<String> list = new ArrayList<String>();
在JDK 7后,右侧泛型的尖括号之内可以留空,但是<>仍然要写。简化格式:
ArrayList<String> list = new ArrayList<>();
查看成员方法
public boolean add(E e) :将指定的元素添加到此集合的尾部。
参数 E e
,在构造ArrayList对象时, <E>
指定了什么数据类型,那么 add(E e)
方法中,只能添加什么数据类型的对象。
常用方法和遍历
public boolean add(E e) :将指定的元素添加到此集合的尾部。
public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。
public int size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界
public class Demo01ArrayListMethod {
public static void main(String[] args) {
//创建集合对象
ArrayList<String> list = new ArrayList<String>();
//添加元素
list.add("hello");
list.add("world");
list.add("java");
//public E get(int index):返回指定索引处的元素
System.out.println("get:"+list.get(0));
System.out.println("get:"+list.get(1));
System.out.println("get:"+list.get(2));
//public int size():返回集合中的元素的个数
System.out.println("size:"+list.size());
//public E remove(int index):删除指定索引处的元素,返回被删除的元素
System.out.println("remove:"+list.remove(0));
//遍历输出
for(int i = 0; i < list.size(); i++){
System.out.println(list.get(i));
}
}
}
如何存储基本数据类型
ArrayList对象不能存储基本类型,但存储基本数据类型对应的包装类型是可以的。