java字符串截取方法有哪些?java字符串与时间如何转换?

在项目中我们经常会遇到截取字符串的需求,但是对于新手来说,要想完整的截取java字符串还是有些难度的,那java字符串截取方法有哪些?下面来我们就来给大家讲解一下。

方法一:通过split()

将正则传入split()。返回的是一个字符串数组类型。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。

String str = "53285964@qq.com";
String[] strs = str.split("@");
for (int i = 0, i < strs.length; i++)
{
    < p = "" >
        System.out.println(strs[i].toString());
}

运行结果:

53285964
qq.com

方法二:通过subString()方法来进行字符串截取

1、只传一个参数:subString(int beginIndex)

将字符串从索引号为beginIndex开始截取,一直到字符串末尾。(注意索引值从0开始);

String sb = "asdfghj";
String str = sb.substring(2);
System.out.println(str);

运行结果:

dfghj

2、传入两个参数:substring(int beginIndex, int endIndex)

从索引号beginIndex开始到索引号endIndex结束(返回结果包含索引为beginIndex的字符不包含索引我endIndex的字符),如下所示:

String sb = "53285964@qq.com";
String str = sb.substring(0, 8);
System.out.println(str);

运行结果

53285964

3、根据某个字符截取字符串

这里根据”@”截取字符串(也可以是其他子字符串)

String sb = "53285964@qq.com";
String str = sb.substring(0, sb.indexOf("@"));
System.out.println(str);

运行结果:

53285964

分析:indexOf(String str)方法返回的是子字符串第一次出现在字符串的索引位置,上面的代码返回的是@前面的字符。

java字符串与时间如何转换?

1. long字符串转换成yyyy-MM-dd HH:mm:ss格式输出

import java.text.SimpleDateFormat;
import java.util.Date;
//将long字符串转换成格式时间输出
public class LongToString
{
    public static void main(String argsp[])
    {
        String time = "1256006105375";
        Date date = new Date(Long.parseLong(time));
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        time = formatter.format(date);
        System.out.println(time);
    }
}

2. 字符串转换成时间

import java.text.SimpleDateFormat;
import java.util.Date;
import ognl.ParseException;
public class StringToDate
{
    public static void main(String argsp[]) throws Exception
    {
        String time = "2010-11-20 11:10:10";
        Date date = null;
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        date = formatter.parse(time);
        System.out.println(date);
    }
}

3. 取得当前系统时间,返回yyyy-MM-dd HH:mm:ss字符串

import java.text.SimpleDateFormat;
import java.util.Date;
public class StringToDate
{
    public static void main(String argsp[]) throws Exception
    {
        Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String time = formatter.format(date);
        System.out.println(time);
    }
}

4. 取得当前系统时间,返回 HH:mm:ss字符串

import java.text.SimpleDateFormat;
import java.util.Date;
public class StringToDate
{
    public static void main(String argsp[]) throws Exception
    {
        Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
        String time = formatter.format(date);
        System.out.println(time);
    }
}

5.将20101125102503转换成2010-11-25 10:25:03输出

import java.text.SimpleDateFormat;
import java.util.Date;
public class StringToDate
{
    public static void main(String argsp[]) throws Exception
    {
        String time = "20101125102503";
        SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-HH-dd HH:mm:ss");
        SimpleDateFormat formatter2 = new SimpleDateFormat("yyyyHHddHHmmss");
        time = formatter1.format(formatter2.parse(time));
        System.out.println(time);
    }
}

Java字符串是java中最基本的知识点,关于java字符串的相关知识以及使用方法大家一定要掌握哦!最后大家如果想要了解更多java入门知识,敬请关注奇Q工具网。

推荐阅读:

java中接口只允许单一继承吗?java接口有哪些分类?

elasticsearch怎么使用?elasticsearch菜鸟教程

java字符怎么定义?java字符定义的方法