在Java中,如何检查字符串是否以相同的方式开始和结束?

时间:2014-03-22 08:23:05

标签: java

我正在学习Java,并且我完成了一些任务给我的问题。

我遇到了一个具体的问题,我觉得答案很简单,但我找不到它。

我需要检查给定的字符串是否以它开头的前两个字符结尾。例如,"编辑" (以" ed"开头和结尾) 我已尝试使用java endsWith和startsWith,但我一直收到错误

 start = text.startsWith(text.substring(0,2));

Yeilds

错误:不兼容的类型   必需:java.lang.String   发现:布尔

任何帮助将不胜感激。

三江源。

2 个答案:

答案 0 :(得分:5)

当您不需要时,您正在致电startsWith - 您知道它从前两个字符开始,按照定义:)

你可以:

String start = text.substring(0, 2);
boolean valid = text.endsWith(start);

或者只是解开两个:

boolean valid = text.endsWith(text.substring(0, 2));

我假设您已经知道字符串长度为2或更长...如果没有,您应该先检查一下。 (并将变量valid更改为在您的上下文中有意义的任何内容。)

答案 1 :(得分:0)

这是您需要做的动态代码

让我们说我们有

    String testak = "tesHJKLtes"
    //index you need to check here 2
    int ind = 2;

ind是您需要检查的索引

    if ( testak.substring(0,ind).equals(testak.substring(testak.length()
     -ind-1,testak.length()-1))){
        System.out.println("yeeaaahhh");
    }

并且考虑到你不再限于2,你可以给任何你喜欢的号码 它会起作用