编程题中常用的java_api

一:

import java.util.HashMap;

import java.util.Map;

Map<String,Intger> m =new HashMap<>();

void clear( )

从此映射中移除所有映射关系(可选操作)。

boolean containsKey(Object k)

如果此映射包含指定键的映射关系,则返回 true。

boolean containsValue(Object v)

如果此映射将一个或多个键映射到指定值,则返回 true。

Set entrySet( )

返回此映射中包含的映射关系的 Set 视图。

boolean equals(Object obj)

 比较指定的对象与此映射是否相等。

Object get(Object k)

返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。

int hashCode( )

返回此映射的哈希码值。

boolean isEmpty( )

如果此映射未包含键-值映射关系,则返回 true。

Set keySet( )

返回此映射中包含的键的 Set 视图。

Object put(Object k, Object v)

将指定的值与此映射中的指定键关联(可选操作)。

void putAll(Map m)

从指定映射中将所有映射关系复制到此映射中

Object remove(Object k)

如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。

int size( )

返回此映射中的键-值映射关系数。

Collection values( )

返回此映射中包含的值的 Collection 视图。

 

二:

import java.util.Stack;

Stack<Integer> s = new Stack<>()

boolean empty() 

测试堆栈是否为空。

Object peek( )

查看堆栈顶部的对象,但不从堆栈中移除它。

Object pop( )

查看堆栈顶部的对象,但不从堆栈中移除它。

Object push(Object element)

把项压入堆栈顶部。

int search(Object element)

返回对象在堆栈中的位置,以 1 为基数。

 

三:

import java.util.LinkedList;

import java.util.Queue;

Queue<String> queue = new LinkedList<String>();

queue.poll();

返回第一个元素,并在队列中删除

queue.element();

queue.peek();

返回第一个元素 

boolean add(E element)
boolean offer(E element)

如果队列没有满,将元素添加到队列尾部

 

四: List<> l = new ArrayList<>();

public int size() 

返回ArrayList的实际大小

public boolean isEmpty()

判断ArrayList是否为空

public boolean contains(Object o)

判断ArrayList是否包含元素o

public int indexOf(Object o)

正向查找,返回元素的索引值

public int lastIndexOf(Object o)

反向查找,返回元素的索引值

public E get(int index)

获取index位置的元素

public boolean add(E e)

将e添加到ArrayList末尾

public E remove(int index)

删除ArrayList指定位置的元素

public boolean remove(Object o)

删除ArrayList中指定的元素

public void clear()

//清空ArrayList,将全部元素置为null

public boolean addAll(Collection<? extends E> c)

将集合C中的所有元素添加到ArrayList中

 

五: Arrays

Arrays.fill(arr,int 5)

填充数组

Arrays.sort(arr)

排序

Arrays.equals(arr1,arr2)

比较数组元素是否相等

Arrays.binarySearch(arr,E e)

二分查找法找指定元素的索引值(下标)

Arrays.copeOf(arr,int start)

从索引为start开始截取数组

Arrays.copeOfRange(arr,int start,int end)

截取索引start到end(不包括end)

 

六.String

java.lang.String(StringBuilder线程不安全,StringBuffer线程安全)

char charAt(int index)

返回给定位置的代码单元

boolean equals(Object other)

boolean equalsIngoreCase(String other)

如果字符串与other相等,返回true

忽略大小写

int length()

返回字符串的长度

String substring(int beginIndex)

String substring(int beginIndex, int endIndex)

返回一个新字符串,包含原始字符串从beginIndex到串尾或到endIndex-1的所有代码单元

String toLowerCase()

String toUpperCase()

返回小写字符串

返回大写字符串

int indexOf(String str[, int fromIndex])

int lastIndexOF(String str[, int fromIndex])

返回第一个/最后一个子串的位置,从起始位置或者fromIndex开始

 

toCharArray()

变成字符数组

String.valueOf(char[] a)

由字符数组生成字符串

 

七.

 

    1、填充数组:fill

    eg1:

    int []arr = new int[5];

    Arrays.fill(arr, 2);

    output(arr);

    结果是:2 2 2 2 2 

 

    eg2:

    int []arr = new int[5];

    Arrays.fill(arr, 1,3,8);

    output(arr);

    结果是:0 8 8 0 0 

    给第1位(0开始)到第3位(不包括)赋值8

 

 

    2、数组元素排序:sort

    eg1:

    int []arr = {3,2,1,5,4};

    Arrays.sort(arr);

    output(arr);

    结果是:1 2 3 4 5 

 

    eg2:

    int []arr = {3,2,1,5,4};

    Arrays.sort(arr,1,3);

    output(arr);

    结果是:3 1 2 5 4 

    分析:给第1位(0开始)到第3位(不包括)排序

 

 

    3、比较数组元素是否相等:equals

    int []arr1 = {1,2,3};

    int []arr2 = {1,2,3};

    System.out.println(Arrays.equals(arr1,arr2));

    结果是:true 

    如果是arr1.equals(arr2),则返回false,因为equals比较的是两个对象的地址,不是里面的数,而Arrays.equals重写了equals,所以,这里能比较元素是否相等。 

 

 

    4、二分查找法找指定元素的索引值(下标):binarySearch

    eg1:

    int []arr = {10,20,30,40,50};

    System.out.println(Arrays.binarySearch(arr, 20));

    结果是:1 

    分析:能找到该元素,返回下标为1(0开始)

 

    eg2:

    int []arr = {10,20,30,40,50};

    System.out.println(Arrays.binarySearch(arr, 35));

    结果是:-4 

    分析:找不到元素,返回-x,从-1开始数,如题,返回-4 

 

    eg3:

    int []arr = {10,20,30,40,50};

    System.out.println(Arrays.binarySearch(arr, 0,3,30));

    结果是:2 

    分析:从0到3位(不包括)找30,找到了,在第2位,返回2 

 

    eg4:

    int []arr = {10,20,30,40,50};

    System.out.println(Arrays.binarySearch(arr, 0,3,40));

    结果是:-4 

    分析:从0到3位(不包括)找40,找不到,从-1开始数,返回-4

 

    5、截取数组:copeOf和copeOfRange

    eg1: copy

    int []arr = {10,20,30,40,50};

    int []arr1 = Arrays.copyOf(arr, 3);

    output(arr1);

    结果:10 20 30 

    分析:截取arr数组的3个元素赋值给姓数组arr1 

 

    eg2: copyOfRange

    int []arr = {10,20,30,40,50};

    int []arr1 = Arrays.copyOfRange(arr,1,3);

    output(arr1);

    结果:20 30 

    分析:从第1位(0开始)截取到第3位(不包括)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值