String属于基础的数据类型吗?
String不是数据类型,而是对象。
String str;//声明String类变量
String str1="string";//声明并赋值String类变量
str="This is a string";//Java中的所有字符串都作为String类的对象实现
java中操作字符串都有哪些类?它们之间有什么区别?
有String、StringBuilder和StringBuffer。其中,String是不可变对象,而StringBuilder和StringBuffer可以改变。我也不知道StringBuilder和StringBuffer的区别在哪里,不过我查了很多人的说法,好像StringBuilder是非线程安全的,StringBuffer是线程安全的。
String str="i"与String str=new String(“i”)一样吗?
不一样,String str="i"的方式即是给str赋值为i,而String str=new String(“i”)是给str分配一个内存空间,两者是有区别的。
String str1="string";
String str2="string";
String str3=new String("string");
System.out.println(str1==str2);//答案为true
System.out.println(str1==str2);//答案为false
如何将字符串反转?
可以利用字符串操作类StringBuilder或StringBuffer的reverse()方法将字符串反转。
StringBuffer str1=new StringBuffer("string");
System.out.println(str1.reverse());//答案为gnirts
StringBuilder str2=new StringBuilder("string");
System.out.println(str2.reverse());//答案为gnirts
String类的常用方法都有哪些?
String str1="str";
String str2="ing";
System.out.println(str1.charAt(1)); //t 求索引处所在字符串
System.out.println(str1.concat(str2)); //string 将字符串拼接起来
System.out.println(str1.length()); //3 求字符串长度
System.out.println(str1.indexOf("t")); //1 求字符所在的索引值
System.out.println(str1.equals(str2)); //false 判断字符串是否相等
System.out.println(str1.isEmpty()); //false 判断字符串是否为空