Java学习笔记_字符串/静态static
字符串的特點
創建字符串的常見3+1種方式
三種構造方法:
public String():創建一個空白字符串,不含有任何內容
public String(char[] array):根據字符數組的內容,來創建對應的字符串
public String(byte[] array):根據字節數組的內容,來創建對應的字符串
一種直接創建
String str = “Hello”;//右邊直接用雙引號
字符串的比較相關方法
public static void main(String[] args){String str1 = “Hello”;String str2 = “Hello”;char[] charArray = {‘H’,’e’,’l’,’l’,’e’};String str3 = new String(charArray);System.out.println(str1.equals(str2));System.out.println(str2.equals(str3));System.out.println(str3.equals(“Hello”));System.out.println(“str2”.equals(str1));String str4 = “hello”;System.out.println(str1.equals(str4));//falseString str5 = null;System.out.println(“abc”.equals(str5));//推薦,falseSystem.out.println(str5.equals(“abc”));//不推薦,報錯,空指針異常NullPointerExceptionString strA = “Java”;String strB = “java”;System.out.println(strA.equals(strB));//false,嚴格區分大小寫System.out.println(strA.equalsIgnoreCase(strB));//true,忽略大小寫 }==是進行對象的地址值比較,如果確實需要字符串內容的比較,可以使用兩個方法
public boolean equals(Object obj):
參數可以是任何對象,只有參數是一個字符串并且內容相同的才會給true
否則返回false
注意事項:
推薦:“abc”.equals(str) 不推薦: str.equals(“abc”)
public boolean equalsIgnoreCase(String str):忽略大小寫,進行內容比較
字符串的獲取相關方法
public int length(); 獲取字符串當中含有的字符串個數,拿到字符串的長度
public String concat(String str):
將當前字符串和參數字符串拼接成為返回值新的字符串
public char charAt(int index):
獲取指定索引位置的單個字符。(從索引0開始)
public int indexOf(String str):
查找參數字符串在本字符串當中首次出現的索引位置,如沒有,返回值為-1
字符串的截取方法
public String substring(int index);
截取從參數位置一直到字符串末尾,返回新字符串
public String substring(int begin,int end);
截取從begin開始,一直到end結束中間的字符串
備注:[begin,end),包含左邊,不包含右邊
字符串的轉換相關方法
String當中與轉換相關的常用方法:
public char[] toCharArray();
將當前字符串拆分成為字符數組作為返回值
public byte[] getBytes();
獲得當前字符串底層的字節數組
public String replace(CharSequence oldString,CharSequence newString);
將所有出現的老字符串替換成為新的字符串,返回替換之后的結果新字符串。
字符串的分割方法
public String[] split(String regex)
按照參數規則,將字符串切分成為若干部分
注意事項:
split方法的參數其實是一個“正則表達式”
如果按照英文句點“.”進行切分,必須寫“\.”
如果一個成員變量使用了static關鍵字,那么這個變量不再屬于對象自己,而是屬于所在的類。多個對象共享同一份數據。
public class Student{private int id;private String name;private int age;static String room;private static int idCounter = 0;//學號計數器,每當new了一個新對象的時候,計數器++public Student(){idCounter++;}public Student(String name,int age){this.name = name;this.age = age;this.id = ++idCounter;} }一旦使用static修飾成員方法,那么這就成為了靜態方法。靜態方法不屬于對象,而是屬于類。
如果沒有static關鍵字,那么必須首先創建對象,然后通過對象才能使用它。
如果有了static關鍵字,那么不需要創建對象,直接就能通過類名稱來使用它
無論是成員變量,還是成員方法,那么必須首先創建對象,然后通過對象才能使用它
靜態變量:類名稱.靜態變量
靜態方法:類名稱.靜態方法()
注意事項:
原因:因為內存當中是先有靜態內容,后有非靜態內容
原因:this代表當前對象,通過誰調用的方法,誰就是當前對象
靜態代碼塊
靜態代碼塊的格式:
public class 類名稱{
static class 類名稱{
//靜態代碼塊的內容
}
}
特點:當第一次用到本類時,靜態代碼塊執行唯一的一次
靜態內容總是優先于非靜態,所以靜態代碼塊比構造方法先執行
靜態代碼塊的典型用途:
用來一次性地對靜態成員變量進行賦值
java.util.Arrays是一個與數組相關的工具類,里面提供了大量的靜態方法,用來實現數組的常見操作
public static String toString(數組):將參數數組變成字符串(按照默認格式:[元素1,元素2,元素3 …])
public static void sort(數組):按照默認升序(從小到大)對數組的元素進行排序
備注:
數學工具類
java.util.Math類是數學相關的工具類,里面提供了大量的靜態方法,完成與數學運算相關的操作
總結
以上是生活随笔為你收集整理的Java学习笔记_字符串/静态static的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最后的更新:谷歌发布适用于 Pixel
- 下一篇: Java学习笔记_继承