Java String 类学习笔记

原创
2019/04/11 18:23
阅读数 112

 String 类是在java.lang包中的一个工具类;所有String _   (StringBuffer /StringBuilder) 也都是 java.lang 包中的。

输入一个字符串的写法:

Scanner scanner =  new Scanner(System.in);
String  sc= scanner.nextLine();
System.out.println(sc);

String 是最基本的数据类型吗?
不是。Java中的基本数据类型只有8个:byte、short、int、long、float、double、char、boolean;除了基本数据类型和枚举类型外都是引用类型。

String 是值类型还是引用类型?
除基本的数据类型外,都是引用类型,所以String是引用类型,但是在python中string是值类型。

// 创建字符串
        String  message = "hello";
        System.out.println(message);
        
        char []  mes_1= {'h','e','l','l','o'};
        String message_1 = new String(mes_1);
        System.out.println(message_1);
        
        // 输入字符串
        scanner = new Scanner(System.in);
        //Scanner scanner =  new Scanner(System.in);
        String  sc= scanner.nextLine();
        System.out.println(sc);

length()方法,length属性和size()的方法的区别:

  •  1.length()方法是针对字符串来说的,要求一个字符串的长度就要用到它的length()方法;
  •  2.length属性是针对Java中的数组来说的,要求数组的长度可以用其length属性;
  •  3.java中的size()方法是针对泛型集合说的,如果想看这个泛型有多少个元素,就调用此方法来查看!

        这个例子来演示这两个方法和一个属性的用法:

public static void main(String[] args) {
    String []list={"ma","cao","yuan"};
    String a="macaoyuan";
    System.out.println(list.length);
    System.out.println(a.length());
    List array=new ArrayList();
    array.add(a);
    System.out.println(array.size());
}

java中String的常用方法

1、length() 字符串的长度 
  例:char chars[]={'a','b'.'c'}; 
    String s=new String(chars); 
    int len=s.length(); 

2、charAt() 截取一个字符 
  例:char ch; 
    ch="abc".charAt(1); 返回'b' 

3、 getChars() 截取多个字符 
  void getChars(int sourceStart,int sourceEnd,char target[],int targetStart) 
  sourceStart指定了子串开始字符的下标,sourceEnd指定了子串结束后的下一个字符的下标。因此, 子串包含从sourceStart到sourceEnd-1的字符。接收字符的数组由target指定,target中开始复制子串的下标值是targetStart。 
  例:String s="this is a demo of the getChars method."; 
    char buf[]=new char[20]; 
    s.getChars(10,14,buf,0); 

4、getBytes() 
  替代getChars()的一种方法是将字符存储在字节数组中,该方法即getBytes()。 

5、toCharArray() 

6、equals()和equalsIgnoreCase() 比较两个字符串 

7、regionMatches() 用于比较一个字符串中特定区域与另一特定区域,它有一个重载的形式允许在比较中忽略大小写。 
  boolean regionMatches(int startIndex,String str2,int str2StartIndex,int numChars) 
  boolean regionMatches(boolean ignoreCase,int startIndex,String str2,int str2StartIndex,int numChars) 

8、startsWith()和endsWith()  startsWith()方法决定是否以特定字符串开始,endWith()方法决定是否以特定字符串结束 

9、equals()和== 
  equals()方法比较字符串对象中的字符,==运算符比较两个对象是否引用同一实例。 
  例:String s1="Hello"; 
    String s2=new String(s1); 
    s1.eauals(s2); //true 
    s1==s2;//false 

10、compareTo()和compareToIgnoreCase() 比较字符串 

11、indexOf()和lastIndexOf() 
  indexOf() 查找字符或者子串第一次出现的地方。 
  lastIndexOf() 查找字符或者子串是后一次出现的地方。 

12、substring()  它有两种形式,第一种是:String substring(int startIndex) 
         第二种是:String substring(int startIndex,int endIndex) 

 

13、concat() 连接两个字符串 

14 、replace() 替换 
  它有两种形式,第一种形式用一个字符在调用字符串中所有出现某个字符的地方进行替换,形式如下: 
  String replace(char original,char replacement) 
  例如:String s="Hello".replace('l','w'); 
  第二种形式是用一个字符序列替换另一个字符序列,形式如下: 
  String replace(CharSequence original,CharSequence replacement) 

15、trim() 去掉起始和结尾的空格 

16、valueOf() 转换为字符串 

17、toLowerCase() 转换为小写 

18、toUpperCase() 转换为大写 

展开阅读全文
加载中
点击加入讨论🔥(5) 发布并加入讨论🔥
打赏
5 评论
3 收藏
0
分享
返回顶部
顶部