1. 程式人生 > >Java基礎知識_畢向東_Java基礎視頻教程筆記(13)

Java基礎知識_畢向東_Java基礎視頻教程筆記(13)

書寫 線程 定位 obi binarys hexstring 替換 ringbuf 3.5

13天-01-String
  String類適用於描述字符串事物
  常見的操作:
1.獲取:
  1.1字符串中包含的字符數,也就是字符串的長度。 int length():獲取長度
  1.2根據索引值獲取位置上某個字符。 char charAt(int index);
  1.3根據字符獲取該字符在字符串中的位置
  int indexOf(int ch);返回的是ch在字符串中第一次出現的位置。
  int indexOf(int ch,int fromIndex);從fromIndex指定位置開始,獲取ch在字符串中出現的位置。
  int indexOf(String str);返回的是str在字符串中第一次出現的位置。
  int indexOf(String str,int fromIndex);從fromIndex指定位置開始,獲取str在字符串中出現的位置。
  int lastIndexOf(String str);從最後向前查找str第一次出現的位置。

2.判斷
  2.1字符串中是否包含某一個子串。 boolean contains(str);
  特殊:indexOf(str);可以索引str第一次出現位置,如果返回-1,表示該str不在字符串中存在。也可以用於判斷是否包含子串
  2.2字符中是否有內容。       boolean isEmpty(); //原理是判斷長度是否為0
  2.3字符串是否以指定內容開頭。   boolean startsWith(str);
  2.4字符串是否是以指定內容結尾。   boolean endsWith(str);
  2.5判斷字符串內容是否相同,復寫了Object類中的equals方法。 boolean equals(str);
  2.6判斷內容是否相同,並忽略大小寫。   boolean equalsIgnoreCase();

3.轉換
  3.1將字符數組轉成字符串。
  構造函數:String(char[]);   String(char[],offset,count);將字符數組中的一部分轉成字符串。
  靜態方法:static String copyValueOf(char[]);   static String copyValueOf(char[],offset,count);
       static String valueOf(char[]);
  3.2將字符串轉成字符數組。 char[] toCharArrary();
  3.3將字節數組轉成字符串。 String(byte[]); String(byte[],offset,count);//將字節數組中的一部分轉成字符串。
  3.4將字符串轉成字節數組。 byte[] getBytes();
  3.5將基本數據類型轉成字符串。 static String valueOf(int); static String valueOf(double);
  特殊:字符串和字節數組在轉換過程中,是可以指定編碼表的。

4.替換
  String replace(oldchar,newchar); //如果替換的字符不存在,返回的是原字符串。
5.切割
  String[] split(regex); //按照regex分割為多個子字符串,不包含regex
6.子串:獲取字符串中的一部分
  String substring(begin); //截取從指定位置開始到結尾字符串
  String substring(begin,end); //截取從索引begin到end之間的字符串
7.轉換,去除空格,比較
  7.1將字符串轉成大寫或者小寫。 String toUpperCase(); String toLowerCase();
  7.2將字符串兩端的多個空格去除。 String trim();
  7.3對兩個字符串進行自然順序比較。 int compareTo(string)

StringBuffer是字符串緩存區,就是一個容器。而且長度是可變化的,可以操作多種數據類型,最終會通過toString方法變成字符串。
C create U update R read D delete
1.存儲
  StringBuffer append();將指定數據作為參數添加到已有數據結尾處。
  StringBuffer insert(index,data):可以將數據插入到指定index位置。
2.刪除
  StringBuffer delete(start,end);刪除緩沖區中的數據,包含start,不包含end。
  StringBuffer deleteCharAt(index);刪除指定位置的字符。
3.獲取
  char charAt(int index);
  int indexOf(String str);
  int lastIndexOf(String str);
  int length(); String substring(start,end);
4.修改
  StringBuffer replace(start,end,string);
  void setCharAt(index,char ch);
5.反轉
  StringBuffer reverse();
6.將緩沖區中指定數據存儲到指定字符數組中
  void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)     JDK1.5版本之後,出現了StringBuilder。StringBuffer是線程同步的,StringBuilder是線程不同步的。建議使用StringBuilder。JDK升級主要是在 提高效率,簡化書寫,提高安全性

13天-13-基本數據類型對象包裝類
基本數據類型對象包裝類
byte     Byte      字節     8bit   [-128,127]
short     Short     短整型    16bit   [-32768(-2的15次方),32767(2的15次方-1)]
int      Integer     整型     32bit   [-2147483648(-2的31次方),2147483647(2的31次方-1)]
long     Long      長整型    64bit   [-9223372036854775808(-2的63次方),9223372036854775807(2的63次方-1)]
float      Float      浮點型    32bit   [1.4E-45(2的-149次方),3.4028235E38(2的128次方-1)]
double    Double     雙精度    64bit   [4.9E-324(2的-1074次方),1.7976931348623157E308(2的1024次方-1)]
char     Character    字符     16bit
boolean    Boolean    布爾值     true,false 0是false,非0是true

基本數據類型對象包裝類的最常見作用,就是用於基本數據類型和字符串類型之間做轉換
基本數據類型轉成字符串:
  基本數據類型+""; 包裝數據類型.toString(2); Integer.toString(2);
字符串轉成基本數據類型:
  Integer.parseInt(String);
  Integer i=new Integer("2"); int num=i.intValue();
十進制轉成其他進制
  toBinaryString();   toHexString();    toOctalString();
其他進制轉成十進制
  parseInt(String,radix);    //radix進制數,可以是2~36

註:當數值類型(int)在byte範圍時[-128,127],如果該數值已經存在,則不會開辟新的空間。

Java基礎知識_畢向東_Java基礎視頻教程筆記(13)