Object類,String類
Object類
類 Object 是類層次結構的根類。每個類都使用 Object 作為超類(父類)。所有物件(包括陣列)都實現這個類的方法。
public int hashCode()返回該物件的雜湊碼值
hashCode()----->通過雜湊演算法(雜湊表:hashtable)---->地址值(不是實際意義上的地址值!)
public final Class getClass()返回此 Object 的執行時類 (Java反射機制中講!)
Class類中有一個方法:
publicString getName()以 String 的形式返回此 Class 物件所表示的實體(類、介面、陣列類、基本型別或 void)名稱。
publicclass ObjectTest1 {
publicstaticvoid main(String[]args) {
Student s1 = new Student();
System.out.println(s1.hashCode());
Student s2 = new Student();
System.out.println(s2.hashCode());
Student s3 = new Student();
System.out.println(s3.hashCode());
//public final Class getClass()返回此 Object 的執行時類
Class c1 =s1.getClass();
System.out.println("c1:"+c1);
////public String getName():獲取當前正在執行的這類的全路徑名稱!
String name =c1.getName();
System.out.println("name:"+name);
}
}
Object的另一個方法:
public String toString();返回該物件的字串表示(建議所有子類都重寫此方法)
Integer類中有一個方法:
public static StringtoHexString(int i):將一個int型別的資料轉換成一個十六進位制的字串表現形式
如果直接輸出物件名稱,想要顯示當前物件的成員變數的值,那麼必須重寫Object類中的toString()方法
publicclass ObjectDemo {
public static void main(String[] args) {
//建立一個學生物件
Student s1 = new Student("高圓圓",27) ;
//直接輸出物件名稱
/*System.out.println("s1:"+s1);//[email protected]
//public String toString()
System.out.println("toString():"+s1.toString());//[email protected]
System.out.println("--------------------------");*/
/**
* 通過檢視toString()原始碼:
* public String toString() {
returnthis.getClass().getName() + "@" +Integer.toHexString(this.hashCode());
}
toString()<==>物件名.getClass().getName()+"@" +Integer.toHexString(物件名.hashCode())
*/
System.out.println(s1.getClass().getName()+"@"+Integer.toHexString(s1.hashCode()));
// System.out.println(s1.toString());
//直接物件名稱,想要顯示成員變數的值,怎麼辦?
// System.out.println(s1);
Student s2 = new Student("高圓圓", 27) ;
System.out.println("s2:"+s2);
System.out.println(s1==s2);
}
}
//學生類
publicclass Student extends Object {
//成員變數
private String name;
private int age ;
public Student() {
super();
}
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//當前toString()是自己去寫的
/* @Override
public String toString() {
return name+"---"+age;
}*/
//alt+shift+s->s
//自動生成即可!
@Override
public String toString() {
return "Student [name=" +name + ", age=" + age + "]";
}
}
Object中的另一個方法:
public boolean equals(Object obj)指示其他某個物件是否與此物件“相等”。
面試題:
==和equal()方法的區別
==:比較的是兩個物件的地址值是否相同,
equals()方法預設比較的是兩個物件的地址值是否相同,如果重寫了Object類中的equals()方法,那麼預設比較就是兩個物件的內容是否相同
使用工具自動生產equals()方法
javascript:Array物件,Number物件,String物件,valueOf():====>s1.valueOf(s2) ;比較是內容是否相同
publicclass ObjectDemo {
public static void main(String[] args) {
//建立學生物件
Student s1 = new Student("高圓圓", 27) ;
Student s2 = new Student("高圓圓",27) ;
System.out.println(s1==s2);
System.out.println("------------------");
Student s3 = s1 ;
System.out.println(s1==s3);
System.out.println("-------------------");
System.out.println(s1.equals(s2));//由於重寫Object中的equals()方法,所以比較的是物件的內容是否相同!
/**
* equals()方法的原始碼
* public boolean equals(Object obj) {
return(this == obj);
}
由於Object類中的equals()方法底層是通過"=="來實現的,所以預設比較的是地址值,如果想比較內容是否相同,需要重寫equals()方法
* */
}
}
publicclass Student {
//成員變數
private String name;
private int age ;
public Student() {
super();
}
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//toString()
@Override
public String toString() {
return "Student [name=" +name + ", age=" + age + "]";
}
//重寫了Object類中的equals()方法
@Override
public boolean equals(Object obj) {//Studnet s2 = new Student() ;
if (this == obj)
return true;
if (obj == null) //當前傳入過來的物件是否為空
return false;
if (getClass() != obj.getClass()) //this.getClass() != s2.getClass()
return false;
Student other = (Student) obj;
if (age != other.age)
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
}
/**
* 物件名 instanceof 類:判斷該物件是否是該類的一個例項
**/
}
Object類中的其他兩個方法:
protected void finalize()throwsThrowable:當垃圾回收器確定不存在對該物件的更多引用時,由物件的垃圾回收器呼叫此方法,但是,什麼時候呼叫垃圾回收器
不確定;
System類中的一個方法:
public void gc():執行垃圾回收器,這個垃圾回收器最終呼叫的就是finalize()方法
protectedObject clone()建立並返回此物件的一個副本
throwsCloneNotSupportedException
注意事項:
Object 類的 clone 方法執行特定的複製操作。首先,如果此物件的類不能實現介面 Cloneable,則會丟擲 CloneNotSupportedException。
publicclass ObjectDemo {
public static void main(String[] args)throws CloneNotSupportedException {//該異常是編譯時期異常
//建立s1這個學生物件
Student s1 = new Student() ;
s1.setName("高圓圓") ;
s1.setAge(27) ;
System.out.println(s1.getName()+"---"+s1.getAge());
//複製s1這個物件
Object obj = s1.clone() ;
//向下轉型:
Student s2 = (Student) obj;
System.out.println(s2.getName()+"---"+s1.getAge());
System.out.println("----------------------");
//沒有講clone方法之前:
Student s3 = s1; //把s1地址值賦值s3物件,s3指向s1的堆記憶體中的地址值
System.out.println(s3.getName()+"---"+s3.getAge());
}
}
publicclass Student implements Cloneable{
private String name ;
private int age ;
public Student() {
super();
}
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//重寫Object類中clone()
@Override
protected Object clone() throwsCloneNotSupportedException {
return super.clone();
}
}
1)Scanner:用來建立一個文字掃描器(鍵盤錄入)
2)java高階特性:IO流(後面講)
BufferReder:字元緩衝流來鍵盤錄入
java.util.Scanner;s
Scanner sc = new Scanenr(System.in);
System類中的靜態欄位:
public static final InputStreamin: 標準輸入流
InputStream :位元組流 InputStreamis = System.in ; 實質:抽象類多型
public static final OutputStreamout: 標準輸出流
開發步驟:
1)建立鍵盤錄入物件
2)錄入資料
3)輸出
publicclass ScannerDemo {
public static void main(String[] args) {
//建立鍵盤錄入物件
Scanner sc = new Scanner(System.in) ;
//錄入資料
int a = sc.nextInt() ;
System.out.println("a:"+a);
}
}
Scanner類中常用的方法:
判斷的功能:
細節:可以新增邏輯判斷
hasNextXXX(); 在錄入資料之前,加上判斷功能,判斷是否由下一個可以錄入的XXX型別的資料
nextXXX();//通過錄入獲取這個int型別的資料
舉例:
public boolean hasNextInt()
nextInt();
nextInt():錄入int型別的資料
nextLine():錄入一個字串型別
java.util.InputMismatchException:輸入和想到的資料不匹配
publicclass ScannerDemo2 {
public static void main(String[] args) {
//建立鍵盤錄入物件
Scanner sc = new Scanner(System.in) ;
if(sc.hasNextInt()){
//是否有下一個可以錄入的int型別的資料
//錄入資料
int a = sc.nextInt() ;
System.out.println("a:"+a);
}else{
//錯誤提示
System.out.println("錄入的資料型別和想要的不匹配!");
}
//java.util.InputMismatchException:輸入和想到的資料不匹配
}
}
Scanner類中的注意事項:
先錄入int型別的資料,在錄入String型別資料,第二次錄入的資料沒有接收到,直接輸出結果了,由於"回車"才能接收資料
回車換行符導致的!
解決方案:
在第二次錄入String型別資料之前,需要重新建立鍵盤錄入物件錄入String型別.
publicclass ScannerDemo3 {
public static void main(String[] args) {
//鍵盤錄入物件
Scanner sc = new Scanner(System.in) ;
//先錄入兩個int型別的資料
/*int a = sc.nextInt() ;
int b = sc.nextInt() ;
System.out.println("a:"+a+",b:"+b);*/
//錄入兩個String型別的資料
//hasNextLine
/*String a = sc.nextLine() ;
String b = sc.nextLine() ;*/
//先錄入String型別的資料,在錄入int型別的資料
/*String a = sc.nextLine() ;
int b = sc.nextInt() ;*/
//先錄入int型別,再錄入String型別
int a = sc.nextInt() ;
// String b = sc.nextLine() ;
String b = sc.next() ;
/*
int a = sc.nextInt() ;
//建立鍵盤錄入物件
Scanner sc2 = new Scanner(System.in);
String b = sc2.nextLine() ;
*/
System.out.println("a:"+a+",b:"+b);
}
}
String類
String類:
代表字串。Java 程式中的所有字串字面值(如"abc" )都作為此類的例項實現;字串一旦被賦值,其值不能再改變
String類常用的構造方法:
String():表示一個空字元序列。
publicString(byte[] bytes,Charset ch):預設字符集(編碼格式):GBK,如果是GBK格式,可以不寫第二個引數
publicString(byte[] bytes,int index,int length):將部分位元組陣列構造成一個字串
publicString(char[] value):將字元陣列構造成一個字串
publicString(char[] value,int index,int length):將部分的字元陣列構造成一個字串
publicString(String original):通過字串常量構造一個字串物件
獲取字串的長度功能:
publicint length()
面試題:
陣列中有沒有length(),字串(字串緩衝區:StringBuffer)中沒有length(),集合中有沒有length()(集合後面講)?
陣列沒有length(),length屬性
字串中有length()
集合中沒有length(),獲取集合中元素數量:size()
編碼和解碼:一定要保證編碼格式一致
編碼:
把能看懂的東西轉換成一個看不懂的東西:String----->byte[]:publicbyte[] getBytes(String charsetName)
解碼:
把當前的byte[]轉成能看懂的東西(String):byte[]----->String :public String(byte[] bytes,CharsetName ch)
舉例:
諜戰片:
今天老地方見:
編碼:"今"----->位元組陣列:byte[]---->位元組型別:形成一種二進位制資料
解碼:二進位制資料---->十進位制進位制資料----->String:"今"
publicclass StringDemo {
public static void main(String[] args)throws UnsupportedEncodingException {
//建立一個String物件
String s1 = new String() ;
System.out.println("s1.length():"+s1.length());
System.out.println("s1:"+s1);
System.out.println("----------------------");
//public String(byte[] bytes,Charsetch):預設字符集(編碼格式):GBK,如果是GBK格式,可以不寫第二個引數
//建立一個位元組陣列
byte[] bys = {97, 98, 99, 100, 101} ;
String s2 = new String(bys) ;//位元組的值要找它對應的ASCII碼錶中的字元
System.out.println("s2:"+s2);
//abcde
System.out.println("s2.length():"+s2.length());//5
System.out.println("----------------------");
/**
* 編碼和解碼
*/
//定義一個字串:
String s = "你好" ;
//[-60, -29, -70, -61] :GBK
//[-28, -67, -96, -27, -91,-67]:utf-8
// byte[] bys2 =s.getBytes("utf-8") ;//編碼:以:GBK格式編碼 utf-8:一箇中文:對應三個位元組
byte[] bys2 = s.getBytes() ;
// System.out.println(bys2);
//Arrays:陣列工具類:toString(byte[] bys)
System.out.println(Arrays.toString(bys2));
System.out.println("-------");
// String str = new String(bys2,"utf-8") ;
String str = new String(bys2) ;
System.out.println("str:"+str);
System.out.println("------------------");
//public String(char[] value):將字元陣列構造成一個字串
//定義一個字元陣列
char[] chs = {'我','愛','高','圓','圓'} ;
String s3 = new String(chs) ;
System.out.println("s3.length():"+s3.length());
System.out.println("s3:"+s3);
System.out.println("--------------------");
String s4 = new String(chs, 1, 4) ;
System.out.println("s4:"+s4);
System.out.println("s4.length():"+s4.length());
System.out.println("--------------------");
//public String(String original):通過字串常量構造一個字串物件
String s5 = newString("hello") ;
System.out.println("s5:"+s5);
System.out.println("s5.length():"+s5.length());
String s6 = "hello" ;
System.out.println("s6:"+s6);
System.out.println("s6.length():"+s6.length());
}
}
字串的一個特點:一旦被賦值,其值不能被改變(不可變的字元序列)
面試題:
String s = "hello"
和String s = new String("hello") 兩個有什麼區別?分別建立了幾個物件
第一個建立了一個物件
第二個s建立兩個物件(堆記憶體中有new String(),然後字串常量池中也有這樣一個字串常量(開闢空間的地址))
publicclass StringDemo {
public static void main(String[] args) {
String s = "hello" ; // String s = "abc" ;
/*s += "world" ;
System.out.println("s:"+s);*/
change(s) ;
//輸出字串變數
System.out.println("s:"+s);
}
public static void change(String s){//String型別作為形式引數和基本資料型別的效果一樣
s += "javaweb" ;
}
}
String類的中常用的判斷功能:
boolean equals(Object obj):當前該物件是否obj這個物件是否相等;
booleanequalsIgnoreCase(String str):比較字串是否相等,忽略大小寫
booleancontains(String str):判斷str這個字串是否包含在當前字串中
booleanstartsWith(String str):是否以str子字串開頭
booleanendsWith(String str):判斷是否以str子字串結尾
booleanisEmpty():判斷字串是否為空
Strings = "" ;空字元
Strings = " " ;字串"空格"
Strings = null ;當前字串物件為空
publicclass StringDemo {
public static void main(String[] args) {
//定義一個字串
String s1 = "helloworld" ;
String s2 = "HelloWorld" ;
// boolean equals(Object obj):當前該物件是否obj這個物件是否相等;String重寫equals(),比較的是兩個字串的內容是否相同
System.out.println("equals:"+s1.equals(s2));
//boolean equalsIgnoreCase(Stringstr):比較字串是否相等,忽略大小寫
System.out.println("equalsIgnoreCase:"+s1.equalsIgnoreCase(s2));
//boolean contains(String str):判斷str這個字串是否包含在當前字串中
System.out.println("contains:"+s1.contains("owo"));
System.out.println("contains:"+s1.contains("ak47"));
//boolean startsWith(String str):是否以str子字串開頭
System.out.println("starsWith:"+s1.startsWith("hel"));
//boolean endsWith(String str):判斷是否以str子字串結尾 自己測試
//booleanisEmpty():判斷字串是否為空
System.out.println("isEmpty:"+s1.isEmpty());
}
}
字串變數相加,先開闢空間,在相加
字串常量相加:首先在字串常量池找,有沒有當前這個常量值,有,就直接返回,沒有,需要建立!
publicclass StringDemo2 {
public static void main(String[] args) {
String s1 = "hello";
String s2 = "world";
String s3 = "helloworld";
System.out.println(s3 == s1 + s2);//false
//System.out.println(s3 == (newStringBuilder(String.valueOf(s1))).append(s2).toString());
// s1+s2 ====>newString("helloworld")
System.out.println(s3.equals((s1 +s2)));//true ,
System.out.println(s3 =="hello" + "world");//true
System.out.println(s3.equals("hello"+ "world"));//true
/**
* 通過反編譯工具檢視第三個輸出語句:
* System.out.println(s3 =="helloworld");
System.out.println(s3.equals("helloworld"));
* */
}
}
String類的獲取功能:
int length() :獲取字串長度功能
charcharAt(int index):返回的是索引處對應的字元
intindexOf(int ch):返回指定字元在此字串中第一次出現處的索引
為什麼這裡的字元用int來定義: 97 'a'
intindexOf(String str):返回指定子字串在此字串中第一次出現的索引
intindexOf(int ch,int fromIndex):返回在此字串中第一次出現指定字元處的索引,從指定的索引開始搜尋。
intindexOf(String str,int fromIndex):返回在此字串中第一次出現指定字串處的索引,從指定的索引開始搜尋
Stringsubstring(int start):從指定位置開始擷取字串,預設擷取到末尾
Stringsubstring(int start,int end):從指定位置開始擷取到指定位置結束,包前(start索引)不包後(end索引)
publicclass StringDemo {
public static void main(String[] args) {
//定義一個字串:
String str = "helloworld" ;
//int length() :獲取字串長度功能
System.out.println("length:"+str.length());
//char charAt(int index):返回的是索引處對應的字元
System.out.println("charAt:"+str.charAt(1));
System.out.println("charAt:"+str.charAt(8));
System.out.println("-------------------------------");
//int indexOf(int ch):返回指定字元在此字串中第一次出現處的索引
System.out.println("indexof:"+str.indexOf('l'));
System.out.println("indexof:"+str.indexOf('k'));//-1
//int indexOf(String str):返回指定子字串在此字串中第一次出現的索引
System.out.println("indexOf:"+str.indexOf("owo"));
System.out.println("-------------------------------");
//int indexOf(int ch,int fromIndex):返回在此字串中第一次出現指定字元處的索引,從指定的索引開始搜尋。
System.out.println("indexOf:"+str.indexOf('l',4));
//int indexOf(String str,intfromIndex):返回在此字串中第一次出現指定字串處的索引,從指定的索引開始搜尋 (自己測試)
//String substring(int start):從指定位置開始擷取字串,預設擷取到末尾(返回一個新的字串,不再是字串本身!)
System.out.println("substring:"+str.substring(5));
//String substring(int start,intend):從指定位置開始擷取到指定位置結束,包前(start索引)不包後(end索引)
System.out.println("substring:"+str.substring(4,8));//owor
}
}
String類的轉換功能(重點)
byte[] getBytes():將字串轉換位元組陣列
char[]toCharArray():將字串轉換成 字元陣列 (開發中經常使用)
staticString valueOf(char[] chs):將字元陣列轉換成字串
staticString valueOf(int i):將一個int型別的資料轉換成字串
注意:
String類中的valueOf()可以將任何資料型別轉換成字串
StringtoLowerCase():將字串全部轉成小寫
StringtoUpperCase():將字串全部轉換成大寫
Stringconcat(String str):字串拼接方法
publicclass StringDemo {
//構造方法:
//構造方法不能使用遞迴
/*public StringDemo(){
StringDemo();
}*/
public static void main(String[] args) {
//定義一個字串
String s = "JavaSE" ;
//byte[] getBytes():將字串轉換位元組陣列
byte[] bys = s.getBytes() ;
//遍歷位元組陣列
for(int x = 0 ; x < bys.length ;x++){
System.out.println(bys[x]);
}
System.out.println("---------------------");
//char[] toCharArray():將字串轉換成 字元陣列
char[] chs = s.toCharArray() ;
for (int x = 0; x < chs.length;x++) {
System.out.println(chs[x]);
}
System.out.println("---------------------");
//static String valueOf(char[] chs):將字元陣列轉換成字串
String s2 = String.valueOf(chs) ;
System.out.println("s2:"+s2);
//static String valueOf(int i):將一個int型別的資料轉換成字串
String s3 = String.valueOf(100) ;
System.out.println("s3:"+s3);
//String toLowerCase():將字串全部轉成小寫
System.out.println("toLowerCase:"+s.toLowerCase());
//String toUpperCase():將字串全部轉換成大寫
System.out.println("toUpperCase:"+s.toUpperCase());
//String concat(String str):字串拼接方法
String s4 = "hello" ;
String s5 = "world" ;
System.out.println("contact:"+s4.concat(s5));
String s6 = "java" ;
s6 += "web" ;
System.out.println("s6:"+s6);
方法巢狀
Math.max(Math.max(a,b),c);
方法遞迴:方法呼叫本身的一種現象
三個條件:
1)需要定義個方法
2)方法必須有出口條件
3)必須有某一種規律
public void show(int n){
if(n<0){
System.exit(0); //讓jvm退出,程式結束
}
System.out.println(n);
show(--n) ;
//需求:求5的階乘
//5!= 5 * 4 * 3 * 2 * 1 ;
//5!= 5 * 4! ;
intjc = 1 ;
//迴圈思想
for(intx = 2 ; x <=5 ; x ++){
jc*= x;
}
System.out.println("5的階乘是:"+jc);
System.out.println("-------------------------");
//使用遞迴的思想:
//需要定義個方法
System.out.println("5的階乘是:"+jieCheng(5));
明確返回值型別:
* int型別
* 引數型別:int型別的值
*
* 2)出口條件:
* if(n==1){
* return1 ;
* }
*
* 3)要有規律
* if(n!=1){
* returnn* 方法名(n-1);
public static int jieCheng(int n){
if(n==1){
return1 ;
}else{
returnn* jieCheng(n-1) ; //5 * 4 * 3 * 1 *1
}
相關推薦
java中三個特殊的類------String類、Object類、包裝類
1.String類 1.1 String類的兩種例項化方式 直接賦值 String str = "hello" 通過構造方法例項化String類 String str = new String("hello") 1.2 字串相等比較(內容) public bo
Object類,String類
Object類 類 Object 是類層次結構的根類。每個類都使用 Object 作為超類(父類)。所有物件(包括陣列)都實現這個類的方法。 public int hashCode()返回該物件的雜湊碼值 hashCode()----->
常用類Object,String類詳解
ash trace native object類 obj 關鍵字 圖片 sys img 深拷貝 淺拷貝 垃圾回收 package com.demo.obj; /** * 學習Object類 * native 本地棧方法, 方
JAVA集合類簡要筆記 - 內部類 包裝類 Object類 String類 BigDecimal類 system類
# 常用類 ## 內部類 成員內部類、靜態內部類、區域性內部類、匿名內部類 概念:在一個類的內部再定義一個完整的類 特點: - 編譯之後可生成獨立的位元組碼檔案 - 內部類可直接訪問外部類私有成員,而不破壞封裝 - 可為外部類提供必要的內部功能元件 ``Outer$Inner.class``
javaSE三個特殊的類 -- String類&String類面試題
String類 String類 String的兩種例項化方式 直接賦值(用的最多)  
模板類——string類方法總結
string類 string類是C++標準庫的一個重要的部分,也是字串的一種資料型別,相對於char*字串它更方便強大,我們不必擔心記憶體是否足夠、字串長度等等,而且作為一個泛型類出現,他整合的操作函式足以完成我們大多數情況下的需要。我們可以用 = 進行賦值操作,== 進行比
Java 知識點整理-6.Java常用類Scanner類 + String類
1、Scanner的概述:一個可以使用正則表示式來解析基本型別和字串的簡單文字掃描器。java.util包下,使用需要導包;被final修飾,不能被繼承。 2、Scanner的構造方法原理:Scanner(InputStream source) InputStream輸入流。 3、Syste
javaSE三個特殊的類 -- String類
String類 String類 String的兩種例項化方式 直接賦值(用的最多) String str=“Hello”; 傳統方法,例項化物件
javaSE三個特殊的類 -- String類&String類面試題
String類 String類 String的兩種例項化方式 直接賦值(用的最多) String str=“Hello”; 傳
JAVA字串類string類
package com.study.demo; public class StringDemo { public static void main(String[] args) { /** * 字串2種初始化的比較
JavaSE三個特殊類---String類
String類 String類的兩種例項化方式 a.直接賦值 (推薦使用此方式) String str = “Hello world”; b.通過構造方法例項化String類物件 String str = new String(“Hello world”)
Java中特殊的類---String類
目錄 字串比較 字串查詢 字串替換 字串拆分 字串擷取 String類的兩種例項化方式 1.直接賦值 String str = "Hello world!"; System.out.println(st
字串類String類的判斷功能
StringDemo.java /* * Object:是類層級結構中的根類,所有的類都直接或間接的繼承自該類. * 如果一個方法的形式引數是Object,那麼這裡我們就可以傳遞它的任意的子類物件. * * String類的判斷功能 * boolean equals(O
JAVA類—String類(一)
String類 1 字串的宣告 java中用字串" "括起來 字串的宣告:String 字串name; 宣告及初始化:String str="hello"; 2 建立字串 用一個字元陣列建立一個物件 char[] s={'h','e','l','l
如何將Object類型轉換成String類型
lba plain pub help eight 代碼 tle 能夠 try 1. Object.toString()?1obj.toString()註意:必須保證Object不是null值,否則將拋出NullPointerException異常。 2. (String)O
Object,scanner,String,StringBuffer,Java中基本類型的包裝類型等
Object類scanner Scanner類 String和StringBuffer java中基本類型的包裝類型 math類的幾個常用方法 一、Scanner類 Scanner類:簡單文本掃描器1、鍵盤錄入步驟:(1)需要創建鍵盤錄入對象:Scanner 鍵盤錄入對象=new Scan
(1)Object類 (2)包裝類和數學處理類 (3)String類
lean 由於 哈希 出現 接口類 HA 支持 indexof 類的成員 1.Object類1.1 基本概念 java.lang.Object類是Java類層次結構的根類,任何類都是Object類的直接/間接子類。 1.2 常用的方法(重點) Object() -
深度解析java.lang.String類的equal(Object obj)方法
rst string類型 object ring ava [] div compareto ins 背景:最近在研究靜態掃描的東西,遇到一個規則:"equals(Object obj)" should be overridden along with the "compar
String類中的equals方法與Object類中equals方法的區別
今天在無意中發現一個小知識點,難度不大就是簡單和大家分享一下。 String str1 = new String("abc"); String str2 = new String("abc"); System.out.println(str1.equals(str2));//true
String、Object、包裝類的常用方法以及注意點
String類 1.1String的兩種例項化方式 a.直接賦值 String str=“hello”; b.通過構造方法例項化String物件 1.2字串相等比較