当前位置: 首页 > news >正文

后端项目java中字符串、集合、日期时间常用方法

我这里只介绍了项目中最常用的哈,比如像集合有很多,但我们最常用的就是ArrayList。

然后我这里会以javascript中的字符串、数组的方法为基准来实现,有些方法js和java会有些区别也会介绍 

字符串

每次修改 String 对象都会创建一个新的对象,而 StringBuffer 可以在同一个对象上进行修改,这可以提高性能并减少内存消耗。StringBuffer对象可以被修改,并且不会创建新的对象,这使得它在需要频繁修改字符串内容的情况下更加高效

StringBuffer

 如果项目中碰到需要频繁修改的字符串建议先将字符串转为StringBuffer:

1. String转StringBuffer

String str = "12345";
StringBuffer bufStr = new StringBuffer(str);
System.out.println(bufStr);

2. 追加

StringBuffer buffer = new StringBuffer();
// 追加
buffer.append("1");
buffer.append("3");
buffer.append("4");
buffer.append("5");

3. 插入 (从第几个位置插入元素)

buffer.insert(1, "2");

4. 截取(包前不包后 类似于js的slice)

注意:这里的返回值为String类型而不是StringBuffer 

String substring = buffer.substring(1, 4); // 234

5. 反转

StringBuffer reverseBuffer = buffer.reverse(); // 54321

6. StringBuffer转为String 

String s = buffer.toString();

String 

1. 转集合 (js中的split)

// 转集合(使用split方法先转为数组再转为集合)
List<String> strings = Arrays.asList(str.split(" ")); // 使用空格切分
System.out.println(strings); // [Hello, World]

2. 截取 (js中的slice)

String substring = str.substring(0, 5);

3. 获取索引(js中的IndexOf) 

int ellIndex = str.indexOf("ell"); // 1

4. 获取最后一个索引(js中的lastIndexOf) 

int ellLastIndex = str.lastIndexOf("ell");

5. 判断以什么开头(同js的startsWith) 

boolean isFirstHello = str.startsWith("Hello"); // true

6. 判断以什么结尾(同js的endsWith) 

boolean isLastHello = str.endsWith("World"); // true

7. 字符串替换

这里需要注意一下

不同于前端的是:

java中的replace方法会把字符串中所有字符都替换,这相当于js中的replaceAll方法。

java中的replaceFirst方法只会替换第一个字符,这相当于js中的replace方法。

java中还提供了replaceAll方法,这也是替换所有,不过它适用于基于正则表达式的复杂替换需求,提供更大的灵活性。

String replace = str.replaceFirst("l", "哈哈"); // He哈哈lo World
String replace1 = str.replace("l", "哈哈"); // He哈哈哈哈o Wor哈哈d

8. 去除首位空格 

String str1 = "  w f t  ";
String trim = str1.trim(); // w f t

ArrayList集合 

再说集合之前,我们先简单说一下java中的数组

数组

1. 创建数组

int[] numbers = {1, 2, 3, 4, 5}; // 直接初始化
String[] names = {"Alice", "Bob", "Charlie"}; // 字符串数组初始化

2. 访问和修改数组元素 

int[] numbers = {1, 2, 3, 4, 5};
System.out.println(numbers[0]); // 输出: 1
numbers[0] = 10; // 修改第一个元素
System.out.println(numbers[0]); // 输出: 10

3. 获取数组长度 

int[] numbers = {1, 2, 3, 4, 5};
System.out.println("Array length: " + numbers.length); // 输出: Array length: 5

4. 遍历数组

4.1 使用 for 循环
int[] numbers = {1, 2, 3, 4, 5};
for (int i = 0; i < numbers.length; i++) {System.out.println(numbers[i]);
}
4.2 使用增强型 for 循环(for-each)
int[] numbers = {1, 2, 3, 4, 5};
for (int num : numbers) {System.out.println(num);
}

5. 常用方法

Java 提供了 java.util.Arrays 类,其中包含了许多静态方法来操作数组。以下是一些常用的工具方法:

  • Arrays.toString(array):将数组转换为字符串表示形式。

    int[] numbers = {1, 2, 3, 4, 5};
    System.out.println(Arrays.toString(numbers)); // 输出: [1, 2, 3, 4, 5]
  • Arrays.sort(array):对数组进行排序,默认是升序排列。

    int[] numbers = {5, 3, 1, 4, 2};
    Arrays.sort(numbers);
    System.out.println(Arrays.toString(numbers)); // 输出: [1, 2, 3, 4, 5]
  • Arrays.fill(array, value):用指定的值填充数组的所有元素。

    int[] numbers = new int[5];
    Arrays.fill(numbers, 7);
    System.out.println(Arrays.toString(numbers)); // 输出: [7, 7, 7, 7, 7]
  • Arrays.binarySearch(array, key):在已排序的数组中查找指定的值。如果找到则返回索引,否则返回负数。

    int[] numbers = {1, 2, 3, 4, 5};
    int index = Arrays.binarySearch(numbers, 3);
    System.out.println("Index
http://www.lryc.cn/news/508096.html

相关文章:

  • 【Spring事务】深入浅出Spring事务从原理到源码
  • vue.js滑动到顶便锁定位置
  • EdgeX Core Service 核心服务之 Core Command 命令
  • 掌握常用HTML标签:创建个人简介网页
  • 音视频学习(二十五):ts
  • 10. 虚拟机VMware Workstation Pro下共享Ubuntu和Win11文件夹
  • 单元测试mock框架Mockito
  • Python从0到100(七十八):神经网络--从0开始搭建全连接网络和CNN网络
  • 2024多模态大模型综述最新总结
  • Redis——缓存穿透
  • 1.gitlab 服务器搭建流程
  • McDonald‘s Event-Driven Architecture 麦当劳事件驱动架构
  • GTID详解
  • 图解HTTP-HTTP状态码
  • sh cmake-linux.sh -- --skip-license --prefix = $MY_INSTALL_DIR
  • MySQL 在window免安装启动
  • [JavaScript] 我该怎么去写一个canvas游戏
  • 【潜意识Java】深度解析黑马项目《苍穹外卖》与蓝桥杯算法的结合问题
  • python报错系列(16)--pyinstaller ????????
  • Pytorch | 从零构建ResNet对CIFAR10进行分类
  • Spring Boot 配置Kafka
  • 基于单片机的火灾报警器 (论文+源码)
  • 分析excel硕士序列数据提示词——包含对特征的筛选,非0值的过滤
  • MongoDB 更新文档
  • 分布式协同 - 分布式事务_TCC解决方案
  • MFC/C++学习系列之简单记录13
  • PostgreSQL表达式的类型
  • 速通Python 第四节——函数
  • 如何在Windows系统上安装和配置Maven
  • STM32之GPIO输出与输出