成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Java知識(shí)點(diǎn)總結(jié)(常用類-字符類)

xiaokai / 1478人閱讀

摘要:知識(shí)點(diǎn)總結(jié)常用類字符類知識(shí)點(diǎn)總結(jié)常用類類型用來(lái)比奧斯在編碼中的字符。使用給定中的字符替換此序列的子字符串中的字符。將此字符序列用其反轉(zhuǎn)形式取代。返回最右邊出現(xiàn)的指定子字符串在此字符串中的索引。

Java知識(shí)點(diǎn)總結(jié)(常用類-字符類)

@(Java知識(shí)點(diǎn)總結(jié))[Java, Java常用類]

[toc]

Char

char類型用來(lái)比奧斯在Unicode編碼中的字符。Unicode用來(lái)處理各種語(yǔ)言的所有文字,它占2個(gè)字節(jié),0~65535。

單引號(hào)用來(lái)表示字符常量,表示一個(gè)字符,它與"a"不同,”a"表示含有一個(gè)字符的字符串。

char c1 = "a";

Java語(yǔ)言中還允許使用轉(zhuǎn)義字符 ‘’ ,來(lái)將其后的字符轉(zhuǎn)義為其他的含義

char c2 = "n"; //代表?yè)Q行符

char是在0~65535范圍,運(yùn)算時(shí)直接當(dāng)作整數(shù)來(lái)運(yùn)算。可以把0~65535直接的整數(shù)直接轉(zhuǎn)型為char

 char c3 = "a";  
 int  i = c3+2;
 System.out.println(i); //99
 char  c4 = (char) i;
 System.out.println(c4); //c

不可變字符序列:String String類

String類在java.lang包中,java使用String類創(chuàng)建一個(gè)字符串變量,字符串變量屬于對(duì)象

java把String類聲明的final類,不能有類

String類對(duì)象創(chuàng)建后不能修改,由0或多個(gè)字符組成,包含在一對(duì)雙引號(hào)之間

public final class String

implements java.io.Serializable, Comparable, CharSequence {
/** The value is used for character storage. */
private final char value[]; //聲明一個(gè)不可變數(shù)組用來(lái)存放字符
public String(String original) {
    this.value = original.value;
    this.hash = original.hash;
}

public String(char value[]) {

    this.value = Arrays.copyOf(value, value.length);
}

String類構(gòu)造方法
水果 價(jià)格
public String() 無(wú)參構(gòu)造方法,用來(lái)創(chuàng)建空字符串的String對(duì)象
public String(String str) 用已知的字符串str創(chuàng)建一個(gè)String對(duì)象
public String(char[] chars) 用字符數(shù)組chars創(chuàng)建一個(gè)String對(duì)象
public String(byte[] bytes) 用byte數(shù)組bytes創(chuàng)建一個(gè)String對(duì)象
public String(char[] chars, int startIndex, int numChars) 用字符數(shù)組chars的startIndex開(kāi)始的numChars個(gè)字符創(chuàng)建一個(gè)String對(duì)象
public String(StringBuffer buffer) 用StringBuffer 創(chuàng)建一個(gè)String對(duì)象
String常用方法
public class Demo1 {
 
  // String 對(duì)象的創(chuàng)建
  public static void test1()  {
  
   String s = "apple";
   
   String s1 = new String();  
   
   String s2 = new String("apple");
   
   String s3 = new String(s2);
   
   byte[] bytes = new byte[] {1,2,3};
   String s4 = new String(bytes);
   
   char[] chars = { "a", "b", "c", "d", "e","f" };
   String s5 = new String(chars); // abcdef
   String s6 = new String(chars, 1, 4);  //bcde
                   
  }
  // 常用方法
  public static void test2(){
   
   String s1 = "apple";
   String s2 = "  a,p,p l e  ";
   
   System.out.println(s1+s2); //字符串連接
   
   System.out.println(s1.length()); //字符串長(zhǎng)度
   
   System.out.println(s1.charAt(2)); // 獲取指定未知的字符
   
   char[] charArray = s1.toCharArray(); //轉(zhuǎn)換為char[]
   
   System.out.println(s1.substring(1, 3)); //截取字符串
   
   String[] ss = s2.split(","); // 用,分割字符串
   for (String s : ss) {
     System.out.println(s);
   }
  
   System.out.println(s2.trim()); //去掉兩端的空格
  
   if (s1.equals(s2)) {  //字符串比較
     System.out.println(s1+"=="+s2);
   }else {
     System.out.println(s1+"!="+s2);
   }
   
   String s3 = "java is a good computer language";
   System.out.println(s3.indexOf("o"));  //用于查找當(dāng)前字符串中字符或子串,返回字符或子串在當(dāng)前字符串中從左邊起首次出現(xiàn)的位置,若沒(méi)有出現(xiàn)則返回-1。
   System.out.println(s3.indexOf("o",13)); // 從13開(kāi)始向右查找
   System.out.println(s3.indexOf("good"));  //查找字符串
   System.out.println(s3.lastIndexOf("o"));  //從右往左查找
   
   System.out.println(s3.toUpperCase()); //轉(zhuǎn)大寫字母
   
   System.out.println(s3.startsWith("a")); //s3是否以a開(kāi)頭
   
   System.out.println(s3.contains("good")); //s3是否包含"good"
  }
 
  // 字符串與基本類型的轉(zhuǎn)換
  public static void test3(){
   
   //字符類型轉(zhuǎn)為基本類型
   System.out.println(Integer.parseInt("123"));
   System.out.println(Double.parseDouble("123.4"));
   System.out.println(Float.parseFloat("123.456f"));
   
   // 基本類型轉(zhuǎn)為字符類型
   System.out.println(String.valueOf(123.4));
   
   //進(jìn)制轉(zhuǎn)換
   String binaryString = Long.toBinaryString(123); //二進(jìn)制
   String octalString = Long.toOctalString(123); //8
   String hexString = Long.toHexString(123); //16
   String string = Long.toString(123,16); //任意進(jìn)制
    System.out.println(binaryString);
    System.out.println(octalString);
    System.out.println(hexString);
    System.out.println(string);
  }
  public static void main(String[] args) {
 
    test2();
    test3();
  }
 
}

可變字符序列:StringBuilder、StringBuffer StringBuilder(線程不安全,效率高)
public final class StringBuilder  extends AbstractStringBuilder
                    implements java.io.Serializable, CharSequence{
 
public  StringBuilder() {
        super(16);
    }
public  StringBuilder(String str) {
        super(str.length() + 16);
        append(str );
    }
 public AbstractStringBuilder append(String str ) {
        if (str == null)
            return appendNull();
        int len = str.length();
         ensureCapacityInternal(count  + len); 
        str.getChars(0, len, value, count);
        count += len;
        return this;
    }
private  void ensureCapacityInternal(int minimumCapacity) {
        // overflow-conscious code
        if (minimumCapacity - value.length > 0)
            expandCapacity(minimumCapacity);
    }
void  expandCapacity(int minimumCapacity) { //數(shù)組擴(kuò)容
        int newCapacity = value .length  * 2 + 2;
        if (newCapacity - minimumCapacity < 0)
            newCapacity = minimumCapacity;
        if (newCapacity < 0) {
            if (minimumCapacity < 0) // overflow
                throw new OutOfMemoryError();
            newCapacity = Integer.MAX_VALUE;
        }
        value = Arrays.copyOf(value, newCapacity);
    }

StringBuffer(線程安全,效率低)
public final class StringBuffer
    extends AbstractStringBuilder
    implements java.io.Serializable, CharSequence
{
    @Override
    public synchronized  int length() {
        return count;
    }
 
    @Override
    public synchronized  int capacity() {
        return value.length;
    }

使用

public class Demo2 {
  public static void main(String[] args) {
    test2();
  }
 
  // 新建對(duì)象
  private static void test1() {
    StringBuffer sb1 = new StringBuffer();
    StringBuffer sb2 = new StringBuffer(20);
    StringBuffer sb3 = new StringBuffer("apple");
  }
  
  // 常用方法
  private static void test2() {
    StringBuffer sb = new StringBuffer();
    sb.append("java"); //字符串表示形式追加到序列
    sb.append("is a good computer language");
    System.out.println(sb.toString()); //轉(zhuǎn)換為string
    
    System.out.println(sb.charAt(11)); //返回此序列中指定索引處的 char 值
    
    sb.delete(3, 15); //移除此序列的子字符串中的字符
    System.out.println(sb.toString());
    
    char[] chars = new char[20];
    sb.getChars(4, 11,chars, 0);  //將字符從此序列復(fù)制到目標(biāo)字符數(shù)組  dst。
    System.out.println(new String(chars));
    
    System.out.println(sb.charAt(9)); //返回第一次出現(xiàn)的指定子字符串在該字符串中的索引。
    
    System.out.println(sb.insert(2, "6666").toString()); //將字符串插入此字符序列中。
    
    System.out.println(sb.replace(2, 6, "888")); //使用給定 String 中的字符替換此序列的子字符串中的字符。
    
    System.out.println(sb.reverse()); //將此字符序列用其反轉(zhuǎn)形式取代。
    
    System.out.println(sb.lastIndexOf("8")); //返回最右邊出現(xiàn)的指定子字符串在此字符串中的索引。
    
    System.out.println(sb.substring(5,15).toString()); //返回一個(gè)新的字符序列,該字符序列是此序列的子序列。
    
    System.out.println(sb.length()); //返回長(zhǎng)度
  }
  
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/69139.html

相關(guān)文章

  • Java識(shí)點(diǎn)總結(jié)常用-包裝

    摘要:知識(shí)點(diǎn)總結(jié)常用類包裝類知識(shí)點(diǎn)總結(jié)常用類包裝類是一個(gè)面向?qū)ο蟮恼Z(yǔ)言,但是中的基本數(shù)據(jù)類型卻不是面向?qū)ο蟮?。但是我們?cè)趯?shí)際使用中經(jīng)常將基本數(shù)據(jù)類型轉(zhuǎn)換成對(duì)象,便于操作。 Java知識(shí)點(diǎn)總結(jié)(常用類-包裝類) @(Java知識(shí)點(diǎn)總結(jié))[Java, Java常用類] [toc] 包裝類(wrapper) Java是一個(gè)面向?qū)ο蟮恼Z(yǔ)言,但是Java中的基本數(shù)據(jù)類型卻不是面向?qū)ο蟮?。但是我們?cè)趯?shí)際...

    AlanKeene 評(píng)論0 收藏0
  • Java識(shí)點(diǎn)總結(jié)常用-Date

    摘要:知識(shí)點(diǎn)總結(jié)常用類類知識(shí)點(diǎn)總結(jié)常用類在標(biāo)準(zhǔn)類庫(kù)中包含一個(gè)類。它的對(duì)象表示一個(gè)特定的瞬間,精確到毫秒。中時(shí)間的表示說(shuō)白了也是數(shù)字,是從標(biāo)準(zhǔn)紀(jì)元點(diǎn)開(kāi)始到某個(gè)時(shí)刻的毫秒數(shù),類型是。 Java知識(shí)點(diǎn)總結(jié)(常用類-Date類) @(Java知識(shí)點(diǎn)總結(jié))[Java, Java常用類] [toc] 在標(biāo)準(zhǔn)Java類庫(kù)中包含一個(gè)Date類。它的對(duì)象表示一個(gè)特定的瞬間,精確到毫秒。 Java中時(shí)間的表...

    Kyxy 評(píng)論0 收藏0
  • Java學(xué)習(xí)路線總結(jié),搬磚工逆襲Java架構(gòu)師(全網(wǎng)最強(qiáng))

    摘要:哪吒社區(qū)技能樹(shù)打卡打卡貼函數(shù)式接口簡(jiǎn)介領(lǐng)域優(yōu)質(zhì)創(chuàng)作者哪吒公眾號(hào)作者架構(gòu)師奮斗者掃描主頁(yè)左側(cè)二維碼,加入群聊,一起學(xué)習(xí)一起進(jìn)步歡迎點(diǎn)贊收藏留言前情提要無(wú)意間聽(tīng)到領(lǐng)導(dǎo)們的談話,現(xiàn)在公司的現(xiàn)狀是碼農(nóng)太多,但能獨(dú)立帶隊(duì)的人太少,簡(jiǎn)而言之,不缺干 ? 哪吒社區(qū)Java技能樹(shù)打卡?【打卡貼 day2...

    Scorpion 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<