Java基础03——常用API(1)

一.API的概念

API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的 字典 我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学 习这些类如何使用即可。

二、 Scanner类

导包——》创建对象——》调用方法

import java.util.Scanner; //1. 导包
public class Demo01_Scanner {
public static void main(String[] args) { //2. 创建键盘录入数据的对象
Scanner sc = new Scanner(System.in);//系统通过键盘输入
 int i = sc.nextInt();//3. 接收数据 
System.out.println("请录入一个整数:");//4. 输出数据
System.out.println("i:"+i); }
}

三、Random类

用于生成随机数java.util.Random
成员方法:
public int nextInt(int n) :返回一个伪随机数,范围在 0 (包括)和 指定值 n (不包括)之间的int 值。

import java.util.Random; //1. 导包
public class Demo01_Random {
public static void main(String[] args) { 
	Random r = new Random();//2. 创建键盘录入数据的对象
	for(int i = 0; i < 3; i++){
		int number = r.nextInt(10);//3. 随机生成一个数据
		System.out.println("number:"+ number);//4. 输出数据 
} }
}

四、ArrayList类

  1. java.util.ArrayList 是大小可变的数组的实现,
    存储在内的数据称为元素。此类提供一些方法来操作内部存储的元素。
    ArrayList 中可不断添加元素,其大小也自动增长。
    基本格式:
ArrayList<String> list = new ArrayList<String>();
ArrayList<String> list = new ArrayList<>();JDK1.7后
<E>是泛型

2.基本方法:

public boolean add(E e) :将指定的元素添加到此集合的尾部。
public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。 
public E get(int index) :返回此集合中指定位置上元素。返回获取的元素。
public int size() :返回此集合中的元素数。
3.代码实现:
public class Demo01ArrayListMethod { 
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();//创建集合对象
 list.add("hello"); 
 list.add("world"); 
 list.add("java");//添加元素
System.out.println("get:"+list.get(0)); 
System.out.println("get:"+list.get(1)); 
System.out.println("get:"+list.get(2));
System.out.println("size:"+list.size());
System.out.println("remove:"+list.remove(0));
//遍历输出
for(int i = 0; i < list.size(); i++){
System.out.println(list.get(i)); }
}
 }

4.如何存储基本数据类型
ArrayList只能存储引用类型的数据,类似 int 不能写,必须转换后才能编写,
在这里插入图片描述

五.匿名对象

创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。虽然是创建对象的简化写法,但是应用 场景非常有限。
匿名对象 :没有变量名的对象。

new Scanner(System.in).nextInt();
一旦调用两次方法,就是创建了两个对象,造成浪费,请看如下代码。
 new Scanner(System.in).nextInt(); 
 new Scanner(System.in).nextInt();
 一个匿名对象,只能使用一次。

六.String类

1.概述:
java.lang.String (不需要导入)。Java程序中所有的字符串文字(例如 “abc” )都可以被看作是实现此类的实 例。
类 String 中包括用于检查各个字符串的方法,比如用于比较字符串搜索字符串提取子字符串以及创建具有翻译为大写或小写的所有字符的字符串的副本。
2.特点

字符串在创建后不能更改
String对象不可变,所以可以被共享
”abc“等价于char [] data={'a','b','c'}//底层靠字符数组实现

3.使用步骤

 // 无参构造                 内部三个构造方法
String str = new String();
// 通过字符数组构造
char chars[] = {'a', 'b', 'c'};
 String str2 = new String(chars);
// 通过字节数组构造
byte bytes[] = { 97, 98, 99 }; 
String str3 = new String(bytes);

4.常用方法

## 标题判断方法:
public boolean equals (Object anObject) :将此字符串与指定对象进行比较。
public boolean equalsIgnoreCase (String anotherString) :将此字符串与指定对象进行比较,忽略大小写。
String s1 = "hello"; String s2 = "hello"; String s3 = "HELLO";
System.out.println(s1.equals(s2)); // true System.out.println(s1.equals(s3)); // false S
System.out.println(s1.equalsIgnoreCase(s2)); // true System.out.println(s1.equalsIgnoreCase(s3)); // true 
## 标题获取方法:
public int length () :返回此字符串的长度。
public String concat (String str) :将指定的字符串连接到该字符串的末尾。
public char charAt (int index) :返回指定索引处的 char值。
public int indexOf (String str) :返回指定子字符串第一次出现在该字符串内的索引。
public String substring (int beginIndex) :返回一个子字符串,从beginIndex开始截取字符串到字符
串结尾。
public String substring (int beginIndex, int endIndex) :返回一个子字符串,从beginIndex到
endIndex截取字符串。含beginIndex,不含endIndex。
## 标题转换功能:
public char[] toCharArray () :将此字符串转换为新的字符数组。
public byte[] getBytes () :使用平台的默认字符集将该 String编码转换为新的字节数组。
public String replace (CharSequence target, CharSequence replacement) :将与target匹配的字符串使
用replacement字符串替换。
#分割功能
public String[] split(String regex) :将此字符串按照给定的regex(规则)拆分为字符串数组。

代码实现:

 String s = "helloworld";
        System.out.println(s.length());
        System.out.println(s.charAt(0));
        System.out.println(s.concat("wangyan"));
        System.out.println(s.indexOf("w"));
        System.out.println(s.substring(2));
        System.out.println();

七、Static关键字

1.概念:它可以用来修饰的成员变量成员方法,被修饰的成员是属于类的,而不是单单是属于某个对象的。就可以不靠创建对象来调用了。
2.当 static 修饰成员变量时,该变量称为类变量。该类的每个对象都共享同一个类变量的值。任何对象都可以更改该类变量的值,但也可以在不创建该类的对象的情况下对类变量进行操作。

扫描二维码关注公众号,回复: 10586220 查看本文章
格式:
static 数据类型 变量名;//static int numberID;

在这里插入图片描述在这里插入图片描述
3.静态方法
当 static 修饰成员方法时,该方法称为类方法 。静态方法在声明中有 static ,建议使用类名来调用,而不需要 创建类的对象。调用方式非常简单。

public class MyClass {
    public  void method(){
        System.out.println("这是一个普通的成员方法");
    }
    public static void methodstatic(){
        System.out.println("这是一个静态方法");
    }
}
/*
一旦使用static修饰成员方法,那么就成了静态方法,静态方法不属于对象,而是属于类的
如果没有static修饰,那么必须首先创建对象,才能使用。
如果有static修饰,那么直接类调用。
 */
public class TestStatic {
    public static void main(String[] args) {
        MyClass obj = new MyClass();
        obj.method();
        obj.methodstatic();
        MyClass.methodstatic();//推荐
    }
}
静态方法调用的注意事项:
静态方法可以直接访问类变量和静态方法。 
静态方法不能直接访问普通成员变量或成员方法。反之,成员方法可以直接访问类变量或静态方法。(先有静态,再有非静态) 
静态方法中,不能使用this关键字。
		小贴士:静态方法只能访问静态成员。、

4.调用格式

	访问类变量 类名.类变量名;
 调用静态方法 类名.静态方法名(参数);

5.静态static内存图
在这里插入图片描述
6.静态代码块

/*
静态代码块的格式:
public class类名称 {
    static{
     静态代码块
    }
}
特点:当第一次用到本类中,静态代码块执行唯一的一次
     静态总是优于非静态,静态先执行
静态代码块典型用途:一次性的对成员变量进行赋值
 */
public class person {
    static {
        System.out.println("静态代码块执行了");
    }
    public  person(){
        System.out.println("构造方法执行了");
    }
}
public class StaticTest {
    public static void main(String[] args) {
        person p = new person();
        person p2 = new person();
    }
}

八.Array类

java.util.Arrays 。此类包含用来操作数组的各种方法,比如排序和搜索等。其所有方法均为静态方法,调用起来
非常简单。

public static String toString(数组) :返回指定数组内容字符串表示式
public static void sort(数组) :对指定的int型数组按数字升序进行排序
代码实现
public class ArrayListDemo {
    public static void main(String[] args) {
        int[] arr = {1, 5, 3, 4};
        System.out.println(Arrays.toString(arr));
        Arrays.sort(arr);
        System.out.println(Arrays.toString(arr));
    }
}

九.Math类

java.lang.Math
其所有方法均为静态方法,并且不会创建对象,调用起来非常简单。

public static double abs(double a) :绝对值。
public static double ceil(double a) :向上取整
public static double floor(double a) :向下取整
public static long round(double a) :四舍五入
代码实现:
public static void main(String[] args) {
        System.out.println(Math.abs(-3));
        System.out.println(Math.ceil(3.4));
        System.out.println(Math.floor(3.4));
        System.out.println(Math.round(3.4));

        }
发布了79 篇原创文章 · 获赞 44 · 访问量 2051

猜你喜欢

转载自blog.csdn.net/wy19961103/article/details/103456070