String、StringBuffer、StringBuilder的区别
String的内容不可修改,StringBuffer与StringBuilder的内容可以修改. StringBuffer与StringBuilder大部分功能是相似的 StringBuffer采用同步处理,属于线程安全操作;而StringBuilder未采用同步处理,属于线程不安全操作
class Solution {
public int firstUniqChar ( String s) {
int [ ] count = new int [ 256 ] ;
for ( int i = 0 ; i < s. length ( ) ; ++ i) {
count[ s. charAt ( i) ] ++ ;
}
for ( int i = 0 ; i < s. length ( ) ; ++ i) {
if ( 1 == count[ s. charAt ( i) ] ) {
return i;
}
}
return - 1 ;
}
}
public class Main {
public static void main ( String [ ] args) {
Scanner sc = new Scanner ( System . in) ;
while ( sc. hasNext ( ) ) {
String s = sc. nextLine ( ) ;
int len = s. substring ( s. lastIndexOf ( ' ' ) + 1 , s. length ( ) ) . length ( ) ;
System . out. println ( len) ;
}
sc. close ( ) ;
}
}
class Solution {
public static boolean isValidChar ( char ch) {
if ( ( ch >= 'a' && ch <= 'z' ) ||
( ch >= '0' && ch <= '9' ) ) {
return true ;
}
return false ;
}
public boolean isPalindrome ( String s) {
s = s. toLowerCase ( ) ;
int left = 0 , right = s. length ( ) - 1 ;
while ( left < right) {
while ( left < right && ! isValidChar ( s. charAt ( left) ) ) {
left++ ;
}
while ( left < right && ! isValidChar ( s. charAt ( right) ) ) {
right-- ;
}
if ( s. charAt ( left) != s. charAt ( right) ) {
return false ;
} else {
left++ ;
right-- ;
}
}
return true ;
}
}