Java 从时间分割字符串

Java 从时间分割字符串,java,split,Java,Split,我得到的时间如下 " Time : 06:00:00 AM " 我使用的拆分方法如下,split(“:”)。然后它从字符串中的所有:“中分割时间 我想在第一次“:”之后分离时间,并从时间中删除“AM”分数 请任何人帮我翻译一下这个代码 我构建了这个简单的示例,如下所示。我在“:”之后拆分数据的努力。上述问题在分割时间时出现 import java.util.ArrayList; import java.util.List; public class StringBuilderSample {

我得到的时间如下

" Time : 06:00:00 AM "
我使用的拆分方法如下,
split(“:”)
。然后它从字符串中的所有
:“
中分割时间

我想在第一次
“:”
之后分离时间,并从时间中删除
“AM”
分数

请任何人帮我翻译一下这个代码

我构建了这个简单的示例,如下所示。我在“:”之后拆分数据的努力。上述问题在分割时间时出现

import java.util.ArrayList;
import java.util.List;

public class StringBuilderSample {
    public static void main(String []arg) {
        List<Object> dataList = new ArrayList<Object>();
        Object[] dataArr = {
                "Serial no : 10",
                "Supplier ID : 1",
                "Supplier Name : Md40",
                "GRN no : 20555",
                "Bag ID : 10",
                "Weight : 500",
                "Date : 09-10-2017",
                "Time : 16:09 PM",
                "User ID : 204"
        };
        for(int j=0;j<dataArr.length;j++) {
            String arrayData = dataArr[j].toString();
            Object[] fraction = arrayData.split(":");
            if(fraction.length>2) {
                StringBuilder strBuilder = new StringBuilder();
                for(int i=1; i<fraction.length;i++) {
                    strBuilder.append(fraction[i]);
                }
                String newString = strBuilder.toString();
                dataList.add(newString);
            }else {
                dataList.add(fraction[1]);
            }
        }
        for(Object data : dataList) {
            System.out.println(data);
        }


    }

}
import java.util.ArrayList;
导入java.util.List;
公共类StringBuilderSample{
公共静态void main(字符串[]arg){
List dataList=new ArrayList();
对象[]数据阵列={
“序号:10”,
“供应商编号:1”,
“供应商名称:Md40”,
“总登记号码:20555”,
“行李编号:10”,
“重量:500”,
“日期:2017年10月9日”,
“时间:下午16:09”,
“用户ID:204”
};
对于(int j=0;j2){
StringBuilder strBuilder=新StringBuilder();

对于(int i=1;i您可以使用split方法的极限参数:

Object[] fraction = arrayData.split(":", 2);
这将提供:

fraction[0] --> Time 
fraction[1] --> 16:09 PM

您可以使用split方法的limit参数:

Object[] fraction = arrayData.split(":", 2);
这将提供:

fraction[0] --> Time 
fraction[1] --> 16:09 PM

如果您的问题是将所有对象的字符串“序列号:10”拆分为“10”,并且时间为“:”,这会给您带来麻烦,那么您可以尝试以下代码

    for(int j=0;j<dataArr.length;j++) {
        String arrayData = dataArr[j].toString();
        String fraction = arrayData.substring(arrayData.indexOf(":") + 1);
        dataList.add(fraction);
    }
    for(Object data : dataList) {
        System.out.println(data);
    }

for(int j=0;j如果您的问题是将所有对象的字符串“序列号:10”拆分为“10”,并且时间为“:”,这会给您带来麻烦,那么您可以尝试下面的代码

    for(int j=0;j<dataArr.length;j++) {
        String arrayData = dataArr[j].toString();
        String fraction = arrayData.substring(arrayData.indexOf(":") + 1);
        dataList.add(fraction);
    }
    for(Object data : dataList) {
        System.out.println(data);
    }

for(int j=0;jj)你在用什么语言/工具?我在用java做这件事。我再次编辑了代码以了解更多细节。你在用什么语言/工具?我在用java做这件事。我再次编辑了代码以了解更多细节。非常感谢你的建议。你的建议解决了我的问题。非常感谢你的建议解决了我的问题。