黑马程序员Java课程笔记007
查看上一章:黑马程序员Java课程笔记006类与对象、封装、构造方法
查看下一章:黑马程序员Java课程笔记008String、static、Arrays、Math等常用API
第一章 API
1.1 概述
API
(Application Programming Interface),应用程序编程接口
。JavaAPI是一本程序员的字典
,是JDK中提供给我们使用的类的说明文档
。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可。所以我们可以通过查询API
的方式,来学习Java提供的类
,并得知如何使用。
1.2 API使用步骤
- 打开
帮助文档
- 点击显示
- 你要找谁?在输入框里输入,然后回车
- 看包。
java.lang
下的类不需要导包,其他需要- 看类的解释和说明
- 学习构造方法
- 使用成员方法
第二章 Scanner类
了解API的使用方式
,我们通过Scanner类
,熟悉一下查询API,并使用类的步骤。
2.1 什么是Scanner类
一个可以解析基本类型和字符串的简单文本扫描器
。
例如,以下代码使用户能够从System.in
中读取一个数:
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
2.2 引用类型使用步骤
2.2.1 导包
使用import关键字导包,在类的所有代码之前导包,引入要使用的类型,java.lang包下所有类无需导入。
import 包名.类名;
2.2.2 创建对象
Scanner类的功能:可以实现键盘输入数据,到程序当中
。
引用类型的一般使用步骤:
- 导包 import 包路径.类名称; 如果需要使用的目标类和当前类位于
同一个包下
,则可以省略导包语句不写 只有java.lang
包下的内容不需要导包,其他的包都需要import语句- 创建
类名称 对象名 = new 类名称();
- 使用
对象名.成员方法名()
package cn.itcast.demo01;
/*
Scanner类的功能:可以实现键盘输入数据,到程序当中。
引用类型的一般使用步骤:
1. 导包
import 包路径.类名称;
如果需要使用的目标类和当前类位于同一个包下,则可以省略导包语句不写
只有java.lang包下的内容不需要导包,其他的包都需要import语句
2. 创建
类名称 对象名 = new 类名称();
3. 使用
对象名.成员方法名()
*/
public class Demo01Scanner {
public static void main(String[] args) {
String str = "123";
}
}
2.3 Scanner使用步骤
获取键盘输入的一个int数字:
sc.nextInt()
;
获取键盘输入的一个字符串:sc.next()
;
package cn.itcast.demo01;
import java.util.Scanner; // 1. 导包
/*
获取键盘输入的一个int数字:sc.nextInt();
获取键盘输入的一个字符串:sc.next();
*/
public class Demo01Scanner {
public static void main(String[] args) {
// 2. 创建
// 备注:System.in代表从键盘进行输入。
Scanner sc = new Scanner(System.in);
// 3. 获取键盘输入的int数字
int num = sc.nextInt();
System.out.println("输入的数字是:" + num);
// 4. 获取键盘输入的字符串
String str = sc.next();
System.out.println("输入的字符串是:" + str);
}
}
2.4 练习
2.4.1 求和
题目:键盘输入两个int数字,并且求出和值
思路:
- 既然需要键盘输入,那么就使用Scanner
- Scanner的三个步骤:导包、创建、使用
- 需要的是两个数字,所以要调用两次nextInt()方法
- 得到了两个数字,就需要加在一起
- 将结果打印输出。
package cn.itcast.demo01;
import java.util.Scanner;
/*
题目:键盘输入两个int数字,并且求出和值
思路:
1. 既然需要键盘输入,那么就使用Scanner
2. Scanner的三个步骤:导包、创建、使用
3. 需要的是两个数字,所以要调用两次nextInt()方法
4. 得到了两个数字,就需要加在一起
5. 将结果打印输出。
*/
public class Demo02ScannerSum {
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();
int result = a + b;
System.out.println("结果是:" + result);
}
}
2.4.2 取最值
题目:
键盘输入三个int数字,然后求出其中的最大值。
思路:
- 既然是键盘输入,肯定需要用到Scanner
- Scanner的三个步骤:导包、创建、使用nextInt()方法
- 既然是三个数字,那么调用三次nextInt()方法,得到三个int变量
- 无法同时判断三个数字哪个更大,应该转换为两个步骤:
4.1 首先判断前两个中谁最大,得到前两个的最大值。
4.2 拿着前两个中的最大值,再和第三个数字比较,得到三个数字当中的最大值- 打印最终结果
package cn.itcast.demo01;
/*
题目:
键盘输入三个int数字,然后求出其中的最大值。
思路:
1. 既然是键盘输入,肯定需要用到Scanner
2. Scanner的三个步骤:导包、创建、使用nextInt()方法
3. 既然是三个数字,那么调用三次nextInt()方法,得到三个int变量
4. 无法同时判断三个数字哪个更大,应该转换为两个步骤:
4.1 首先判断前两个中谁最大,得到前两个的最大值。
4.2 拿着前两个中的最大值,再和第三个数字比较,得到三个数字当中的最大值
5. 打印最终结果
*/
import java.util.Scanner;
public class Demo03ScannerMax {
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);
}
}
2.5 匿名对象【了解】
2.5.1 概念
package cn.itcast.demo02;
public class Person {
String name;
public void showName(){
System.out.println("我叫" + name);
}
}
创建对象的标准格式:
类名称 对象名 = new 类名称();
匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。
new 类名称();
注意事项:匿名对象只能使用唯一的一次,下次再用不得不再
创建一个新对象
。
使用建议:如果确定有一个对象,只需要使用唯一的一次
,就可以使用匿名对象。
package cn.itcast.demo02;
/*
创建对象的标准格式:
类名称 对象名 = new 类名称();
匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。
new 类名称();
注意事项:匿名对象只能使用唯一的一次,下次再用不得不再创建一个新对象。
使用建议:如果确定有一个对象,只需要使用唯一的一次,就可以使用匿名对象。
*/
public class Demo01Anonymous {
public static void main(String[] args) {
// 左边的one就是对象的名字。
Person one = new Person();
one.name = "高圆圆";
one.showName(); // 我叫高圆圆
// 匿名对象
new Person().name = "赵又廷";
new Person().showName(); // 我叫null
}
}
2.5.2 应用场景
使用匿名对象可以作为方法的参数
和返回值
。
package cn.itcast.demo02;
import java.util.Scanner;
public class demo02Anonymous {