2013-07-29 54 views
-3

在Java中,获取字符串最后250个字符的最佳方法是什么?在Java中,获取字符串的最后250个字符的最佳方法是什么?

字符串可能为空,小于或大于250个字符。

感谢

+6

你已经试过了什么?提示:它可能会使用'substring',但你需要找出从哪里取得子字符串... –

+1

我在想,['String#isEmpty'](http://docs.oracle.com/javase /7/docs/api/java/lang/String.html#isEmpty%28%29),['String#length'](http://docs.oracle.com/javase/7/docs/api/java/ lang/String.html#length%28%29)和['Math.min'](http://docs.oracle.com/javase/7/docs/api/java/lang/Math.html#min%28int ,%20int%29)是什么你需要阅读 – MadProgrammer

+0

'最好的'哪个标准?或者你的意思是“如何获取字符串的最后205个字符?” – 2013-07-29 10:01:02

回答

1

我完全不明白你是什么,但可以做到这一点:

if(string.length() > 250) { 
    char[] lastCharacters = (string.subString(string.length-250)).toCharArray; 
} 
+0

当我回答同样的问题时,我被低估了,但是timmeke得到了赞赏? –

0

这应有助于:

string.substring(Math.max(0, string.length() - 250)); 

Math.max()应选择提供了2个数字之间的最高正值上班。

+1

如果长度小于250,则会失败,这是问题中明确指出的情况。 –

+0

@JonSkeet,我更新了我的帖子。 –

+0

所以你现在已经回答了最简单的情况。我认为这不是特别有用。 –

3

最简单的将是这样的: -

public class check2 { 
    public static void main(String main[]) 
    { 
     String temp = "Your String Of Some Size"; 
     if(temp.length()>=250) 
     { 
      System.out.println(temp.substring(temp.length()-250)); 

     } 
     else 
     { 
      //Since Size is less than 250 ,i display the same string 
      System.out.println(temp); 
     } 
    } 

} 
1

这是做一个更紧凑的方式它:

public String getLast250Char(String input) { 
     return (input != null && input.length() > 250) ? input.substring(-250) : input; 
} 

这样这样,你会得到一个null返回值,一旦您input字符串是null

1
public class twofiftystring{ 
    public static void main(String main[]) 
    { 
     String somestring = "String of arbitrary size"; 
     String res = temp.length()>=250 ? somestring.substring(temp.length()-250 : somestring; 
    } 
} 
4

我会用StringUtils.right从下议院郎例子:

StringUtils.right("abc", 0) = "" 
StringUtils.right("abc", 2) = "bc" 
StringUtils.right("abc", 4) = "abc" 
0

此方法将最后250个字符返回字符串中,和其他人刚刚返回的字符串。 如果字符串必须是250个字符或更长,您可以修改它以返回异常。

public String getLast250Characters(String text) 
{ 
    return (text.length() <= 250) ? text : text.substring((text.length() - 250)); 
} 
相关问题