API(Application Programming Interface)应用程序编程接口,java API是一本程序员字典,是JDK提供给我们使用的类的说明文档。
API使用步骤:
- 打开帮助文档
- 点击显示,找到索引,找到输入框
- 你要找谁?在输入框里输入,回车
- 看包。java.lang下的类不需要导包,其他需要
- 看类的解释和说明
- 学习构造方法
- 使用成员方法
引用类型的一般使用
- 导包
impor 包路径.类名称
如果需要使用的目标类,和当前类位于同一包下,则可以省略导包语句不写。
只有java.lang包下的内容不需要导包,其他的包都需要import语句。- 创建
类名称 对象名 = new 类名称();- 使用
对象名.成员方法名()
代码示例:
import java.util.Scanner;//导包
public class demo01Scanner {
public static void main(String[] args) {
//创建
// 备注:System.in代表从键盘进行输入
Scanner sc = new Scanner(System.in);
//获取键盘输入的int数字
int num = sc.nextInt();
System.out.println("输入的int数字是" + num);
//获取键盘上的字符串
String str = sc.next();
System.out.println("输入的字符串是" + str);
}
}
创建对象的标准格式:
类名称 对象名= new 类名称();
匿名对象标准格式:
new 类名称();
注意事项:匿名对象只能使用唯一一次,下次再用不得不再创建一个新的对象
代码示例:
public class Person {
String name;
public void shouName() {
System.out.println("我叫"+name);
}
}
public class demo02Anonymous {
public static void main(String[] args) {
Person one = new Person();
one.name = "王霏霏";
one.shouName();
System.out.println("===============");
//匿名对象
new Person().name="高圆圆";
new Person().shouName();//使用两次匿名对象,输出为null
}
}
使用起来三个步骤:
- 导包
import java.util.Random- 创建
Random r =new Random();//小括号当中留空- 使用
获取一个随机的int数字(范围是int所有范围,正负两种):int num = r.nextInt()
获取一个随机的int数字(参数代表了范围,左闭右开区间):int num = r.nextInt(3)
实际上代表的含义是:[0,3),也就是0~2
代码示例:
import java.util.Random;
public class demo03Random {
public static void main(String[] args) {
Random r= new Random();
int num =r.nextInt();
System.out.println("随机数是"+num);
System.out.println("============");
for (int i = 0; i < 10; i++) {
int num2 = r.nextInt(10);//范围实际是0~9
System.out.println(num2);
}
}
}
代码示例:
import java.util.ArrayList;
public class demo01ArrayList {
public static void main(String[] args) {
//创建一个ArrayList集合,集合的名称是list,里面装着的全部是String字符串类型的数据
//备注:从JDK 1.7+开始,右侧的尖括号内部可以不写内容,但是<>本身还是要写的
ArrayList<String> list =new ArrayList<>();
System.out.println(list);//[]
//向集合当中添加一些数据,需要用到add方法
list.add("王霏霏");
System.out.println(list);//[王霏霏]
}
}
ArrayList当中的常用方法:
- public boolean add(E e):向集合当中添加元素,参数的类型和泛型一致。
- public E get(int index):从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素。
- public E remove (int index ):从集合当中删除元素,参数是索引编号,返回值就是被删除掉的元素。
- public int size ():获取集合的尺寸长度,返回值是集合中包含的元素个数。
代码示例:
import java.util.ArrayList;
public class ArrayListmethod {
public static void main(String[] args) {
ArrayList<String>list =new ArrayList<>();
System.out.println(list);//[]
//向元素中添加元素:add
boolean success =list.add("王霏霏");
System.out.println(list);
System.out.println("添加是否成功"+success);//true
list.add("高圆圆");
list.add("赵又廷");
list.add("迪丽热巴");
System.out.println(list);//[王霏霏, 高圆圆, 赵又廷, 迪丽热巴]
//从集合元素中获取元素:get。索引值从0开始
String name = list.get(2);
System.out.println("第二号索引位置值:"+name);//第二号索引位置值:赵又廷
//从集合中删除元素:remove
String who = list.remove(2);
System.out.println("被删除人的是:"+who);//被删除人的是:赵又廷
System.out.println(list);//[王霏霏, 高圆圆, 迪丽热巴]
//获取集合的长度尺寸,也就是其中元素的个数
int size = list.size();
System.out.println("集合的长度是:"+ size);//集合的长度是:3
}
}
API当中说:java程序中的所有字符面值(如“abc”)都作为此类实例实现
其实就是说:程序当中所有的双引号字符串,都是String类的对象。
三种构造方法:
public String():创建一个空白字符串,不含有任何内容。
public String(char[] array):根据字符数组的内容,来创建对应的字符串。
public String(byte[] array):根据字节数组的内容,来创建对应的字符串。
一种直接构造方法:
String str=“Hello”;
代码示例:
public class Demo01String {
public static void main(String[] args) {
//使用空参构造
String str1 = new String();
System.out.println("第一个字符串:"+str1);
//根据字符数组创建字符串
char[] charArray={
'A','B','C'};
String str2 = new String(charArray);
System.out.println("第二个字符串:"+str2);
//根据字节数组创建字符串
byte[] byteArray ={
97,98,99};
String str3 = new String(byteArray);
System.out.println("第三个字符串:"+str3);
}
}
5.1 字符串的比较相关方法
1 、public boolean equals (Object obj):参数可以是任何对象,只有参数是一个字符串,并且内容相同才会给true;否则返回false
注意事项:
1、任何对象都能用object进行接收
2、equals方法具有对称性,也就是a.equals(b)和b.equals(a)效果一样
3、如果比较双方一个常量一个变量,推荐把常量字符串写在前面
2、public bolean equalsIgnoreCase(String [ ] str):忽略大小写进行内容的比较
代码示例:
public class Demo01Equals {
public static void main(String[] args) {
String str1 ="Hello";
String str2 ="Hello";
char [] charArray={
'H','e','l','l','o'};
String str3 =new String(charArray);
System.out.println(str1.equals(str2));//true
System.out.println(str2.equals(str3));//ture
System.out.println(str3.equals("Hello"));//ture
System.out.println("Hello".equals(str1));//ture
String str4="hello";
System.out.println(str1.equals(str4));//false
}
}
5.2 String当中与获取相关的常用方法有:
public int length():获取字符串当中含有的字符个数,拿到字符串长度
public String concat(String str): 将当前字符串和参数字符串拼接成功返回值新的字符串。
public char charAt (int index):获取指定索引位置的单个字符。
public int index0f(String str):查找参数字符串在本字符串当中首次出现的索引位置,如果没有返回-1值
5.3 String当中与截取相关的方法有:
public String substring ( int index):截取从参数位置一直到字符串末尾,返回新字符串
public String substring ( int begin,int end):截取从begin开始,一直到end结束,中间的字符串。
备注:[begin end ),包含左边,不包含右边
代码示例:
public class Demo03SubString {
public static void main(String[] args) {
String str1 ="HelloWorld";
String str2 = str1.substring(5);
System.out.println(str1);
System.out.println(str2);
System.out.println("===============");
String str3 = str1.substring(4,7);
System.out.println(str3);//oWo
}
}
5.4 String 当中与转换相关的方法有:
public char [ ] toCharArray ():将当前字符串拆分成为字符数组作为返回值。
public getBytes():获得当前字符串底层的字节数组。
public replace(CharSequence oldString, CharSequence newString):将所有出现的老字符串替换成为新的字符串,返回替换之后的结果新字符串。
备注:CharSequence意思就是可以接受字符串型。
代码示例:
public class Demo04StringConvert {
public static void main(String[] args) {
//转换成为字符数组
char[] chars = "Hello".toCharArray();
System.out.println(chars[0]);//H
System.out.println(chars.length);//5
System.out.println("===============");
//转换成为字节数组
byte[] bytes = "abc".getBytes();
System.out.println(bytes[0]);
for (int i = 0; i < bytes.length; i++) {
System.out.println(bytes[i]);
}
System.out.println("==========");
String str = "How do you do ?";
String str2 = str.replace("o", "*");
System.out.println(str);
System.out.println(str2);
}
}
5.5 String 当中与分割相关的方法有:
public String [ ] split (String regex ): 按照参数的规则,将字符串切分成为若干部分。
注意事项:
split 方法的参数其实是一个“正则表达式”。
如果按照英文句 “.”进行切分,必须写“ \\.”
代码示例:
public class DemoStringSplit {
public static void main(String[] args) {
String str1 = "aaa,bbb,ccc";
String[] array1 = str1.split(",");
for (int i = 0; i < array1.length; i++) {
System.out.println(array1[i]);
}
System.out.println("=============");
String str2 = "aaa bbb ccc";
String[] array2 = str2.split(" ");
for (int i = 0; i < array2.length; i++) {
System.out.println(array2[i]);
}
System.out.println("============");
String str3 = "XXX.YYY.ZZZ";
String[] array3 = str3.split("\\.");
System.out.println(array3.length);
for (int i = 0; i < array3.length; i++) {
System.out.println(array3[i]);
}
}
}
public class Student {
private int id; //学号
private String name; //姓名
private int age; //年龄
static String room;//所在教室
private static int idCounter=0;//学号计数器,每单当new一个新对象的时候,计数器++
public Student(){
this.id = ++idCounter;
}
public Student(String name, int age) {
this.name = name;
this.age = age;
this.id = ++idCounter;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class Demo01StaticField {
public static void main(String[] args) {
Student one = new Student("郭靖",19);
one.room = "101教室";
System.out.println("姓名:"+one.getName()
+",年龄:"+one.getAge()+",教室:"+one.room
+",学号:"+one.getId());
Student two = new Student("黄蓉",16);
System.out.println("姓名:"+two.getName()
+",年龄:"+two.getAge()+",教室:"+two.room
+",学号:"+two.getId());
}
}
public class 类名称{
static{
//静态代码块内容
}
}
特点:当第一次用到本类时,静态代码块执行唯一一次。静态内容总是优先于非静态,所以静态代码块比构造方法先执行。
静态代码块的典型用途:
用来一次性地对静态成员变量进行赋值。
常见方法格式:
public static String toString (数组):将参数数组变成字符串(按照默认格式:[元素1][元素2][元素3]…)
public static void sort (数组):按照默认升序对数组的元素进行排序
备注:
1、如果是数组,sort默认按照升序从小到大
2、如果是字符串,sort默认按照字母升序
3、如果是自定义类型,那么这个自定义的类需要有Comparable或者Comparator接口支持(今后学习)
代码示例:
import java.util.Arrays;
public class Demo01Arrays {
public static void main(String[] args) {
int[] intArray = {
10,20,30};
//将int[]数组按照默认格式变成字符串
String intStr = Arrays.toString(intArray);
System.out.println(intStr);
int[] array1 = {
2,3,4,8,7,9};
Arrays.sort(array1);
System.out.println(Arrays.toString(array1));
}
}
Math类相关方法:
public static double abs (double num) :获取绝对值
public static double ceil ( double num):向上取整
public static double floor( double num):向下取整
public static long roundl ( double num):四舍五入
代码示例:
public class Demo01Math {
public static void main(String[] args) {
//获取绝对值
System.out.println(Math.abs(3.14));//3.14
System.out.println(Math.abs(0));//0
System.out.println(Math.abs(-2.5));//2.5
System.out.println("=============");
//向上取整
System.out.println(Math.ceil(3.9));//4.0
System.out.println(Math.ceil(3.1));//4.0
System.out.println(Math.ceil(3.0));//4.0
System.out.println("=============");
//向下取整
System.out.println(Math.floor(3.9));//3.0
System.out.println(Math.floor(3.1));//3.0
System.out.println(Math.floor(3.0));//3.0
System.out.println("==============");
//四舍五入
System.out.println(Math.round(20.4));//20
System.out.println(Math.round(20.7));//21
}
}
========================================
‵□′)╯✧Duang~送你五毛钱特效!
动一动小手
♥点个♥