如何检查Java字符串中有多少个字母?
如何检查字符串中某个位置的字母(即字符串的第二个字母)?
答案 0 :(得分:43)
A)
String str = "a string";
int length = str.length( ); // length == 8
http://download.oracle.com/javase/7/docs/api/java/lang/String.html#length%28%29
修改
如果要计算String
中特定类型字符的数量,那么一个简单的方法是遍历String
检查每个索引以对照您的测试用例。
int charCount = 0;
char temp;
for( int i = 0; i < str.length( ); i++ )
{
temp = str.charAt( i );
if( temp.TestCase )
charCount++;
}
其中TestCase
可以是isLetter( )
,isDigit( )
等等。
或者,如果您只想计算除空格之外的所有内容,请在if
中查看temp != ' '
B)
String str = "a string";
char atPos0 = str.charAt( 0 ); // atPos0 == 'a'
http://download.oracle.com/javase/7/docs/api/java/lang/String.html#charAt%28int%29
答案 1 :(得分:5)
以简单的方式回答您的问题:
a) String.length();
b) String.charAt(/* String index */);
答案 2 :(得分:4)
如果您正在计算字母数,则上述解决方案将因某些unicode符号而失败。例如,对于这5个字符,sample.length()将返回6而不是5:
String sample = "\u760c\u0444\u03b3\u03b5\ud800\udf45"; // 瘌фγε
CodePointCount函数是在Java 1.5中引入的,我理解为字形等提供了更好的结果
sample.codePointCount(0, sample.length()) // returns 5
http://globalizer.wordpress.com/2007/01/16/utf-8-and-string-length-limitations/
答案 3 :(得分:0)
1)回答你的问题:
String s="Java";
System.out.println(s.length());