认识Java的第七天了解的知识
- API
- API使用步骤:
- Scanner类:
- 匿名对象【了解】:
- Random类:
- 使用步骤
- ArrayList类:
- 什么是ArrayList?
- 常用的方法和遍历:
- 如何存储我们的基本数据类型:
API
概念:
API就是应用程序编程接口,javaAPI其实就是一本程序字典,是jdk提供给我们的实用的类的说明文档,这些类将底层的代码封装起来,我们并不需要关系这个类如何实现,我们学习怎么使用就可以了,我们学着就是查找api。
API使用步骤:
1、打开帮助文档API
2、点击索引,看见输入框
3、你要找那个类,就输入哪个类的类名
4、看包,java.lang下的类不需要到包,其他的需要导包
5、看类的解释和说明,学习构造方法
6、使用成员方法
Scanner类:
1、什么是Scanner类:
一个简单的文本扫描器,可以使用正则表达式解析原始类型和字符串。
读取一个数
Scanner scanner=new Scanner(System.in);
int i=scanner.nextInt();
//注意:System.in系统的输入指的就是键盘录入数据
2、使用:
使用import关键字导包,在类的所有的代码做之前导包
import java.util.Scanner;
创建对象:Scanner scanner=new Scanner(System.in);
调用方法:
调用该类的方法,完成指定的功能:
import java.util.Scanner;
public class test01 {
public static void main(String[] args) {
System.out.println("请输入一个数据:");
Scanner scanner=new Scanner(System.in);
int i=scanner.nextInt();
System.out.println("键盘输入的数据是:"+i);
}
}
键盘输入两个整数求和:
import java.util.Scanner;
public class test02 {
public static void main(String[] args) {
//输入两个整数求和:
Scanner scanner=new Scanner(System.in);
System.out.println("请输入第一个数:");
int a=scanner.nextInt();
System.out.println("请输入第二个数:");
int b=scanner.nextInt();
int sum=a+b;
System.out.println("sum="+sum);
}
}
键盘录入三个数据并获取最大值:
import java.util.Scanner;
public class test03 {
public static void main(String[] args) {
// 键盘输入三个数据并获取最大值
Scanner scanner=new Scanner(System.in);
System.out.println("请输入第一个数:");
int a=scanner.nextInt();
System.out.println("请输入第二个数:");
int b=scanner.nextInt();
System.out.println("请输入第三个数:");
int c=scanner.nextInt();
int temp=(a>b?a:b);
int max=(temp>c?temp:c);
System.out.println("max:"+max);
}
}
匿名对象【了解】:
概念:
创建对象时候,只有创建对象的语句,却没有把对象地址值赋值给变量,虽然是创建对象的简单写法,但是应用场景不是很多。
匿名对象:没有变量名的对象
应用场景:
1、创建匿名对象直接调用方法,没有变量名:
2、一旦调用两次方法,就会创建两个对象,造成浪费。
3、匿名对象作为我们的方法的参数和返回值
import java.util.Scanner;
public class test05 {
public static void main(String[] args) {
//1、创建匿名对象直接调用方法,没有变量名:
// 2、一旦调用两次方法,就会创建两个对象,造成浪费。
int i=new Scanner(System.in).nextInt();
int j=new Scanner(System.in).nextInt();
//普通方法
Scanner scanner=new Scanner(System.in);
input(scanner);
//3、匿名对象作为我们的方法的参数
input(new Scanner(System.in));
}
public static void input(Scanner scanner) {
System.out.println(scanner);
}
}
//两个
import java.util.Scanner;
public class test06 {
public static void main(String[] args) {
//普通的方式
Scanner scanner=getScanner();
System.out.println(scanner);
}
private static Scanner getScanner(){
//匿名对象我们的方法返回值
return new Scanner(System.in);
}
}
Random类:
什么是Random类:
该类的实例用于生成伪随机数的流。
import java.util.Random;
public class test07 {
public static void main(String[] args) {
Random random=new Random();
int i=random.nextInt();
System.out.println(i);
}
}
使用步骤
1、java.util.Random: 该类需要import导包
2、查看构造方法:
public Random(){}:创建一个新的随机数生成器
3、查看它的成员方法:
public int nextInt(int n):返回值一个伪随机数,范围在在0(包含)到指定n(不包含)的之间的一个int值
使用Random类,完成生成3个10以内的随机整数的操作:
import java.util.Random;
public class test08{
public static void main(String[] args) {
Random random=new Random();
for (int i = 0; i <3 ; i++) {
int a=random.nextInt(10);
System.out.println("随机数是:"+a);
}
}
}
获取一个1-n之间的随机数,包含n。
import java.util.Random;
import java.util.Scanner;
public class test09 {
public static void main(String[] args) {
System.out.println("请输入一个数字:");
Scanner scanner=new Scanner(System.in);
int n=scanner.nextInt();
Random random=new Random();
int number=random.nextInt(n);
System.out.println("以下是1-"+n+"之间的随机数:");
System.out.println("number:"+number);
}
}
猜数字小游戏:
游戏开始时,会随机生成一个1-100之间的整数number,玩家猜测一个数字guessNumber,会与number比较,系统提示猜大了或者猜小了,直到游戏玩家猜对了,游戏结束。
import java.util.Random;
import java.util.Scanner;
public class test10 {
public static void main(String[] args) {
Random random=new Random();
int number=random.nextInt(100)+1;
Scanner scanner=new Scanner(System.in);
while (true){
System.out.println("你要猜的数字(1-100):");
int guessnumber=scanner.nextInt();
if (guessnumber>number){
System.out.println("你猜的数字大了");
}else if (guessnumber<number){
System.out.println("你猜的数字小了");
}else {
System.out.println("恭喜你,猜对了");
break;
}
}
}
}
ArrayList类:
到目前为止,我们存储学生的对象数据,选择的容器,只有对象数组,而数组有长度固定这么一个特性,我们无法适应我们数据变化的需求,为了解决这个问题,java提供了另外一个容器,ArrayList集合类,让我可以方便的操作数据。
什么是ArrayList?
其实就是一个大小可以变化的数组实现,存储在内数据称为元素,此类提供的一些方法来操作存储的数据元素,ArrayList可以不断的添加元素,其大小自动增长。
使用步骤
查看类:
1、导包java.util.ArrayList
2、ArrayList<E> : <E>--表示指定的数据类型,叫做泛型,在E出现的位置,我们可以用一种引用类型来将其代替。表示我们存储的是哪种引用类型的元素。
ArrayList<String> ,ArrayList<Student>
3、构造方法
ArrayList<Student> list=new ArrayList<Student>();
在jdk1.7以后,我们右侧的泛型尖括号可以为空,但是<>要保留,。
ArrayList<Student> list=new ArrayList<>();
4、查看一下成员方法:
public boolean add(E e); :将指定的元素添加到集合的尾部。
import java.util.ArrayList;
public class test13 {
public static void main(String[] args) {
ArrayList<String> list=new ArrayList<>();
String s1="a";
String s2="bb";
String s3="ccc";
System.out.println(list);
list.add(s1);
list.add(s2);
list.add(s3);
}
}
常用的方法和遍历:
对于元素基本都是增删改查, (CRUD)
public boolean add(E e); 将指定的元素添加到集合的尾部
public E remove(int index); 移除集合中指定索引的位置的元素,返回获取的元素
public E get(int index); 返回集合中指定位置的元素,返回获取的元素
public int size(); 返回此集合中元素的个数,遍历集合是,可以控制索引的范围,防止越界
import java.util.ArrayList;
public class test13 {
public static void main(String[] args) {
ArrayList<String> list=new ArrayList<>();
String s1="a";
String s2="bb";
String s3="ccc";
System.out.println(list);
list.add(s1);
list.add(s2);
list.add(s3);
System.out.println(list.get(0));
System.out.println(list.size());
System.out.println(list);
System.out.println(list.remove(0));
System.out.println(list);
}
//结果
[]
a
3
[a, bb, ccc]
a
[bb, ccc]
如何存储我们的基本数据类型:
ArrayList对象不能存储基本类型,只能存储引用类型的数据,例如不能写,但是存储基本数据类型的包装类是可以,所以,我们想要存储基本数据类型,<>中的数据类型,必须转换后才能写:
byte -----------------------------------Byte
short----------------------------------Short
int-----------------------------------Integer
long--------------------------------Long
float--------------------------Float
double-------------------------Double
char---------------------------Character
boolean----------------Boolean
我们只需要基本int类型和char类型所对应的包装类就可以了,其他的基本类型对应的包装类就是首字母大写就可以
import java.util.ArrayList;
public class test12 {
public static void main(String[] args) {
ArrayList<Integer>list=new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
System.out.println(list);
}
}
//结果:[1, 2, 3]