马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
1 字符串处理惩罚
1.1 String 类
String 类是 Java 中不可变的字符序列。它提供了以下常用方法:
- length():返回字符串的长度。
- charAt(index):返回指定索引处的字符。
- substring(startIndex, endIndex):返回从 startIndex 到 endIndex-1 处的子字符串。
- indexOf(char):返回字符在字符串中初次出现的索引,假如没有找到则返回 -1。
示例代码:
- String str = "Hello World";
- // 获取字符串长度
- int length = str.length();
- // 获取指定索引处的字符
- char ch = str.charAt(0);
- // 获取子字符串
- String substring = str.substring(0, 5);
- // 查找字符在字符串中首次出现的索引
- int index = str.indexOf('o');
复制代码 1.2 StringBuilder 类
StringBuilder 类是一个可变的字符序列,用于高效地构造和修改字符串。它提供了以下常用方法:
- append(string):将字符串追加到 StringBuilder 的末尾。
- insert(index, string):在指定索引处插入字符串。
- reverse():反转 StringBuilder 中的字符次序。
示例代码:
- StringBuilder sb = new StringBuilder();
- // 追加字符串
- sb.append("Hello ");
- sb.append("World");
- // 插入字符串
- sb.insert(5, "Java ");
- // 反转字符串
- sb.reverse();
复制代码 2 集合框架
2.1 List 接口
List 接口表示一个有序的元素集合。它提供了以下常见的实现:
- ArrayList:基于数组实现,支持元素的随机访问和动态增长。
- LinkedList:基于链表实现,支持高效的插入和删除操纵。
示例代码(ArrayList):
- List<String> list = new ArrayList<>();
- // 添加元素
- list.add("Hello");
- list.add("World");
- // 获取元素
- String element = list.get(0);
- // 移除元素
- list.remove(1);
复制代码 示例代码(LinkedList):
- List<String> list = new LinkedList<>();
- // 添加元素
- list.add("Hello");
- list.add("World");
- // 获取元素
- String element = list.getFirst();
- // 移除元素
- list.removeFirst();
复制代码 2.2 Set 接口
Set 接口表示一个不包罗重复元素的集合。它提供了以下常见的实现:
- HashSet:基于哈希表实现,不答应重复元素。
- TreeSet:基于红黑树实现,元素按天然次序排序。
示例代码(HashSet):
- Set<String> set = new HashSet<>();
- // 添加元素
- set.add("Hello");
- set.add("World");
- // 检查元素是否存在
- boolean contains = set.contains("Hello");
- // 移除元素
- set.remove("World");
复制代码 示例代码(TreeSet):
- Set<String> set = new TreeSet<>();
- // 添加元素
- set.add("Hello");
- set.add("World");
- // 获取第一个元素
- String first = set.first();
- // 移除第一个元素
- set.remove(first);
复制代码 2.3 Map 接口
Map 接口表示一个键值对集合。它提供了以下常见的实现:
- HashMap:基于哈希表实现,键值对之间的映射不保证次序。
- TreeMap:基于红黑树实现,键值对按键的天然次序排序。
示例代码(HashMap):
- Map<String, Integer> map = new HashMap<>();
- // 添加键值对
- map.put("Hello", 1);
- map.put("World", 2);
- // 获取值
- int value = map.get("Hello");
- // 移除键值对
- map.remove("World");
复制代码 示例代码(TreeMap):
- Map<String, Integer> map = new TreeMap<>();
- // 添加键值对
- map.put("Hello", 1);
- map.put("World", 2);
- // 获取第一个键
- String firstKey = map.firstKey();
- // 移除第一个键值对
- map.remove(firstKey);
复制代码 2.4 遍历方式
1). 使用迭代器(Iterator)
- // 创建一个 ArrayList
- List<String> list = new ArrayList<>();
- list.add("Hello");
- list.add("World");
- list.add("Java");
- // 使用迭代器遍历 ArrayList
- Iterator<String> iterator = list.iterator();
- while (iterator.hasNext()) {
- String element = iterator.next();
- System.out.println(element);
- }
复制代码 2). 使用增强 for 循环
- // 创建一个 HashSet
- Set<String> set = new HashSet<>();
- set.add("Hello");
- set.add("World");
- set.add("Java");
- // 使用增强 for 循环遍历 HashSet
- for (String element : set) {
- System.out.println(element);
- }
复制代码 3). 使用流(Stream)
- // 创建一个 HashMap
- Map<String, Integer> map = new HashMap<>();
- map.put("Hello", 1);
- map.put("World", 2);
- map.put("Java", 3);
- // 使用流遍历 HashMap
- map.keySet().stream()
- .forEach(key -> System.out.println(key + ": " + map.get(key)));
复制代码 4). 使用 lambda 表达式
- // 创建一个 ArrayList
- List<String> list = new ArrayList<>();
- list.add("Hello");
- list.add("World");
- list.add("Java");
- // 使用 lambda 表达式遍历 ArrayList
- list.forEach(element -> System.out.println(element));
复制代码 5). 使用并行流(Parallel Stream)
- // 创建一个 ArrayList
- List<String> list = new ArrayList<>();
- list.add("Hello");
- list.add("World");
- list.add("Java");
- // 使用并行流遍历 ArrayList
- list.parallelStream()
- .forEach(element -> System.out.println(element));
复制代码 2.5 区别
- 数据布局: ArrayList 使用数组,LinkedList 使用链表,HashSet 使用哈希表。
- 元素次序: ArrayList 和 LinkedList 保持插入次序,而 HashSet 无序。
- 是否答应重复: ArrayList 和 LinkedList 答应重复元素,而 HashSet 不答应。
- 时间复杂度: ArrayList 和 HashSet 的查找、插入和删除操纵的平均时间复杂度为 O(1),而 LinkedList 的查找操纵为 O(n),插入和删除操纵为 O(1)。
- 线程安全性: ArrayList、LinkedList 和 HashSet 都黑白线程安全的。
3 Java文件操纵
3.1 读取文件
要读取文件,可以使用 FileReader 和 BufferedReader 类:
- FileReader fr = new FileReader("file.txt");
- BufferedReader br = new BufferedReader(fr);
- String line;
- while ((line = br.readLine()) != null) {
- // 处理每一行
- }
- br.close();
- fr.close();
复制代码 3.2 写入文件
要写入文件,可以使用 FileWriter 和 BufferedWriter 类:
- FileWriter fw = new FileWriter("file.txt");
- BufferedWriter bw = new BufferedWriter(fw);
- bw.write("内容");
- bw.close();
- fw.close();
复制代码 结语:以上就是关于Java的常用API的学习,也是学习Java基础必须要把握的,非常之紧张,感谢各位看官的观看,谢谢,下期见!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |