蓝桥杯快到了,Java的这些常用方法一定要知道

简介: 一年一度的蓝桥杯还有不到10天就到了,我们除了在算法方面要进行练习之外,对于一些基本的api也要熟记,因为这也是重点,是我们会用到的东西。

前言


一年一度的蓝桥杯还有不到10天就到了,我们除了在算法方面要进行练习之外,对于一些基本的api也要熟记,因为这也是重点,是我们会用到的东西。


1. 数组

1.1 实例化数组

//声明数组变量
String [] arr;
int arr1[];
//数组对象实例化(长度为6)
String[] array = new  String[6];
int score[] = new  int[6]
1.2 初始化数组;
//静态初始化
int  arr[]= new  int []{1, 2, 3, 4, 5};
String[] array1={ "马超" , "马云" , "马可"};
String[] array2= new  String[]{"吕布", "奉先", "三姓家奴", "猛将"};
//动态初始化
int  score[]= new  int [ 3 ];
for (int i = 0; i < score.length; i ++) {   
  score[i]=i + 1 ; 
}


1.3 求数组长度


int  length = array1.length;


1.4 遍历打印数组


for  ( int  i =  0 ; i < array1.length; i++) {

    System.out.println(array1[i]);

}

1.5 int数组转成字符串string


String arrStrings = Arrays.toString(array);


1.6 从Array中创建Arraylist

String[] array1={"马超" , "马云" , "马可"};
ArrayList arrayList= new  ArrayList(Arrays.asList(array1));
System.out.println(arrayList);



1.7 contains()查询数组中是否包含某一个值

String a= "马超" ;
String[] array1={ "马超" , "马云" , "关羽" , "刘备" , "张飞" };
if (Arrays.asList(array1).contains(a)) {
     System.out.println( "马超在这里" );
}


1.8 将数组转成set集合

String[] array2= new  String[]{"吕布", "奉先", "三姓家奴", "猛将"};
Set set= new  HashSet(Arrays.asList(array2));
System.out.println(set);



1.9 将数组转成list集合

//方法 1.
String[] array2= new  String[]{"吕布", "奉先", "三姓家奴", "猛将"};
List list= new  ArrayList();
for(int i = 0; i < array2.length; i ++) {
     list.add(array2[i]);
}
//方法 2.
String[] arrStrings2={ "1" , "2" , "3" };
List list2 = Arrays.asList(arrStrings2);
System.out.println(list2);



1.10 Arrays.fill()填充数组

//将数组全部填充10
Arrays.fill(arr, 10);

 


1.11 数组排序;

//方法1:sort(int[] a)   放入数组名字
Arrays.sort(arr);
//方法2:sort(a, fromIndex, toIndex)  从第几个到第几个之间的进行排序
Arrays.sort(arr, 1 , 4);



1.12 复制数组

//方法 1
int [] arr6 = {3, 7, 2, 1};
//指定新数组的长度
int [] arr7 = Arrays.copyOf(arr6,  10 );  
//方法 2
//只复制从索引[1]到索引[3]之间的元素(不包括索引[3]的元素)     
int [] arr8 = Arrays.copyOfRange(arr6, 1, 3);  
for  (int i = 0; i < arr8.length; i ++) {
        System.out.println(arr8[i]);
}


1.13 数组去重复

int [] arr11 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 3, 2, 4, 5, 6, 7, 4};
//利用set的特性
Set set2= new  HashSet();
for (int i = 0; i < arr11.length; i ++) {
     set2.add(arr11[i]);
}
System.out.println(set2);
int[] arr12 = new  int[set2.size()];
int j = 0;
for (Integer i : set2) {
     arr12[j++]=i;
}
System.out.println(Arrays.toString(arr12));


2. 栈

2.1 实例化栈


Stack stack = new Stack();


2.2 判断是否为空


stack.empty()


2.3 取栈顶值(不出栈)


stack.peek()


2.4 入栈

//方法1:将元素加入栈顶,并返回栈顶元素
stack.push(Object);
//方法2:也是向栈顶添加一个元素,返回值为true
stack.add(Object);


2.5 出栈


stack.pop();


2.6 栈中元素的个数


stack.size();


2.7 查找元素在栈中的位置(以1开始,由栈底向栈顶方向数)


stack.search(Object);


3. 队列

3.1 实例化队列


Queue queue = new LinkedList();


3.2 进队列,将元素加入队列末尾


queue.offer(Object);


3.3 获取队列头的元素


queue.peek();


3.4 获取队列头的元素并移除


queue.poll();


3.5 判断是否为空


queue.isEmpty()


4. List

4.1 实例化List


List list = new ArrayList();


4.2 list中添加元素


list.add(Object);


4.3 依靠元素下标获取元素


list.get(index);


4.4 list中删除元素

//按照索引删除
list.remove(index);
//按照元素内容删除
list.remove(Object);


4.5 list中是否包含某个元素(返回true或者false)


list.contains(Object);


4.6 list中查看对于元素的索引


list.indexOf(Object);


4.7 将集合转换为字符串


list.toString();


4.8 集合转换为数组


list.toArray();


4.9 集合元素去重复

List list= new  ArrayList<>();
list.add( "aa" );
list.add( "ss" );
list.add( "aa" );
list.add( "ss" );
//方法 1.
for  ( int  i =  0 ; i 
    for  ( int  j = list.size()- 1 ; j >i; j--) {
       if  (list.get(j).equals(list.get(i))) {
            list.remove(j);
         }
     }
}
System.out.println(list);
//方法 2.
List list = new  ArrayList<>();
for (String s : list) {
     if  (Collections.frequency(list, s) < 1 ) {
          list.add(s);
     }
}
System.out.println(list);


5.Map

5.1 实例化Map


Map map = new HashMap();


5.2 清空Map


map.clear();


5.3 判断该集合是否为空


map.isEmpty();


5.4 获取Map中键值对的个数


map.size();


5.5 向集合中添加键值对


map.put(Object key, Object value);


5.6 通过key获取value


map.get(Object key);


5.7 判断Map中是否包含这样的key


map.containsKey(Object key);


5.8 判断Map中是否包含这样的value


map.containsValue(Object value);


5.9 通过key将键值对删除


map.remove(Object key);


5.10 获取Map集合中所有的value


map.values();


5.11 获取Map中所有的key


map.keySet();


结语

祝大家蓝桥杯取得一个好成绩!



相关文章
|
2月前
|
消息中间件 Java Kafka
在Java中实现分布式事务的常用框架和方法
总之,选择合适的分布式事务框架和方法需要综合考虑业务需求、性能、复杂度等因素。不同的框架和方法都有其特点和适用场景,需要根据具体情况进行评估和选择。同时,随着技术的不断发展,分布式事务的解决方案也在不断更新和完善,以更好地满足业务的需求。你还可以进一步深入研究和了解这些框架和方法,以便在实际应用中更好地实现分布式事务管理。
|
2月前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
101 9
|
3天前
|
存储 Java 索引
Java快速入门之数组、方法
### Java快速入门之数组与方法简介 #### 一、数组 数组是一种容器,用于存储同种数据类型的多个值。定义数组时需指定数据类型,如`int[]`只能存储整数。数组的初始化分为静态和动态两种: - **静态初始化**:直接指定元素,系统自动计算长度,如`int[] arr = {1, 2, 3};` - **动态初始化**:手动指定长度,系统给定默认值,如`int[] arr = new int[3];` 数组访问通过索引完成,索引从0开始,最大索引为`数组.length - 1`。遍历数组常用`for`循环。常见操作包括求和、找最值、统计特定条件元素等。
|
1天前
|
算法 Java API
Java 方法注释:规范、实用和高质量的写法
本文深入探讨了如何编写高质量的 Java 方法注释
22 11
|
1天前
|
算法 搜索推荐 Java
【潜意识Java】深度解析黑马项目《苍穹外卖》与蓝桥杯算法的结合问题
本文探讨了如何将算法学习与实际项目相结合,以提升编程竞赛中的解题能力。通过《苍穹外卖》项目,介绍了订单配送路径规划(基于动态规划解决旅行商问题)和商品推荐系统(基于贪心算法)。这些实例不仅展示了算法在实际业务中的应用,还帮助读者更好地准备蓝桥杯等编程竞赛。结合具体代码实现和解析,文章详细说明了如何运用算法优化项目功能,提高解决问题的能力。
26 6
|
1天前
|
算法 Java C++
【潜意识Java】蓝桥杯算法有关的动态规划求解背包问题
本文介绍了经典的0/1背包问题及其动态规划解法。
25 5
|
1天前
|
SQL Java 数据库连接
【潜意识Java】Java中JDBC过时方法的替代方案以及JDBC为什么过时详细分析
本文介绍了JDBC中一些常见过时方法及其替代方案。
20 5
|
2月前
|
安全 Java 开发者
Java中WAIT和NOTIFY方法必须在同步块中调用的原因
在Java多线程编程中,`wait()`和`notify()`方法是实现线程间协作的关键。这两个方法必须在同步块或同步方法中调用,这一要求背后有着深刻的原因。本文将深入探讨为什么`wait()`和`notify()`方法必须在同步块中调用,以及这一机制如何确保线程安全和避免死锁。
60 4
|
2月前
|
Java
深入探讨Java中的中断机制:INTERRUPTED和ISINTERRUPTED方法详解
在Java多线程编程中,中断机制是协调线程行为的重要手段。了解和正确使用中断机制对于编写高效、可靠的并发程序至关重要。本文将深入探讨Java中的`Thread.interrupted()`和`Thread.isInterrupted()`方法的区别及其应用场景。
84 4
|
2月前
|
Java 数据处理 数据安全/隐私保护
Java处理数据接口方法
Java处理数据接口方法
32 1