gpt4 book ai didi

java - 如何使用 Java 8 从字符串中提取子字符串?

转载 作者:行者123 更新时间:2023-11-29 07:24:17 25 4
gpt4 key购买 nike

我有一个 9 位数字的字符串,其中包含以下详细信息:前三位代表城市代码,中间三位是银行代码,最后三位是分行代码。

我想使用 Java 8 或函数式编程从整个字符串中提取这 3 个,以便我可以随时更改实现。

我使用旧的基本结构通过 String.substring(start,end); 一个一个地获取 git


public static void main(String[] args) {

String city = getCityCode("302105202");

System.out.println("City-" + city);

String bank = getBankCode("302105202");

System.out.println("bank-" + bank);

String branch = getBranchCode("302105202");

System.out.println("branch-" + branch);

}

public static String getCityCode(String micr) {
return micr.substring(0, 3);
}

public static String getBankCode(String micr) {
return micr.substring(3, 6);
}

public static String getBranchCode(String micr) {
return micr.substring(6, 9);
}

}

如何在 Java 8 中获取这些?

提前致谢;

最佳答案

您不需要为此目的使用 Java 8 功能。

但是,我不会使用 3 个 static 方法,而是利用 Java 作为一种面向对象的语言。我将定义一个具有 3 个实例变量的 BankAccount 类(或类似的东西)- citybankbranch .

该类的构造函数将接受 String 参数,对其进行解析(使用 substring(),就像您目前所做的那样),并将值分配给 3 个实例变量.

public class BankAccount 
{
private String city;
private String bank;
private String branch;

public BankAccount (String acctStr)
{
this.city = acctStr.substring(0,3);
this.bank = acctStr.substring(3,6);
this.branch = acctStr.substring(6,9);
}

public String getCity () {return city;}
public String getBank () {return bank;}
public String getBranch () {return branch;}

}

您甚至可以考虑将 citybankbranch 代码转换为 int

关于java - 如何使用 Java 8 从字符串中提取子字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57353580/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com