javaab
『壹』 java B{ A ab = A.get(b) } A是類名,get(b)是類A的一個方法。 我想知道ab是什麼,是類A的對象變數么
ab 是 A類的一個對象。
get(b)是一個靜態方法(用static修飾的方法),不需要創建對象就可以調用。
例如類A中有一個方法是:
public static A get( ……參數 ){
A a; 創建一個A類的對象。
內容……內容中有給a傳遞引用或者創建a的語句。
return a; 返回一個A類的對象。
}
這樣一來在你寫的語句中 A ab = A.get(b); 就是調用了A類中的靜態方法,返回一個A類的對象,直接賦給了ab。
這樣說能看懂嗎?
『貳』 在java中ab\bc是什麼意思
System.out.println("ab\bc");
輸出結果為ab c;
\b就相當於空格的
轉義序列 含義
\n 回車(\u000a)
\t 水平製表符(\u0009)
\b 空格(\u0008)
\r 換行(\u000d)
\f 換頁(\u000c)
\' 單引號(\u0027)
\" 雙引號(\u0022)
\\ 反斜杠(\u005c)
\ddd 三位八進制
\udddd 四位十六進制
『叄』 java中如何比較abc和ab
new string("abc")這種是new了一個object,abc是被儲存在其內部的值,「=」把指針賦給a,b,但是a,b指向的是不同的對象,所以返回值是false
大概是這種關系:
即a
b指向不同的對象
『肆』 在java中 String a = "ab"; String b = "a" + "b"; System.out.println(a==b); 的內存圖解是怎樣的
棧中一個a,字元串常量池中一個"ab"。a指向"ab"。
棧中一個b,b指向字元串常量池的"ab"。
"a" + "b"這個會有一個運算的過程,現在jdk1.5以後在編譯器有個優化,會自動吧+替換成StringBuilder的append,運算之後會把「ab」的引用返給b。然後「a」,"b"會被回收。
『伍』 這個java程序的運行結果為什麼是AB,B 我是個學渣說的詳細點,拜託
參數傳遞的問題。
你記住,java中始終只有值傳遞。
operate(a,b),參數傳遞的時候是這樣的,
將a的值(這里a是一個引用,指向了一個內存地址)傳遞進去,復制給x,
將b的值傳遞進去,復制給y。
在方法里,x是a的復制,並不是a本身,y是b的復制,並不是b本身。
所以,在方法裡面,y=x;並不會影響到方法外面的b。
『陸』 Java中ab:cd:ef這樣的字元串,怎麼用split函數解析為string數組
你可以使用java中的正則表達式來解析,java中用Pattern和Matcher使用正則表達式。
或者直接對字元串進行操作:
如果你的字元串的格式是確定的,僅僅是2個字元之間有冒號(:)隔開的話很容易:
public static ArrayList<String> mySplit(String s){
ArrayList<String> list = new ArrayList<String>();
char[] str = s.toCharArray();
int i=0;
while(i<str.length){
if(str[i] == ':'){
i++;
continue;
}
else{
String temp = "";
temp += str[i];
temp += str[i+1];
list.add(temp);
i += 2;
}
}
return list;
}
你如果一定要String[] 類型的你可以再把list轉換一下即可。
『柒』 一段java程序,為什麼輸出AB,B而不是AB,AB
因為x,y是復雜數據類型,這種東西在傳參的時候傳的是引用!
這個有點類似C語言中傳參傳指針的情況。
就是說你x.append(y);這個操作對x來說會改變外層的a的內容,因為函數內的x指向的外層的a。
但是y=x這句就不一樣了。
這句是說y從指向a那個引用變成了指向x的引用,而實際a所指向的內容沒有變化。
這里你可以把x和y理解成指針。就是x.append(y);是去操作x指向的內容,而y=x;只是對y進行賦值。而賦值對於外部變數是沒有影響的
『捌』 java中,類A的對象可以調用類B的方法嗎(AB不是繼承關系)如果可以調用,怎麼調用
先在A類裡面實例化一個B對象 然後用B對象調用方法就可以了。
『玖』 java如何替換文本中所有的字元串ab,但abc中的ab不變
建議使用正則匹配
替換文本中所有的字元串ab,但abc中的ab不變
ab(?!c)
就是說如果現在要替換asdfgh,如果有asdfghjkl,這個地方不換,只有asdfgh前後不是英文字母才換
如果是獨立單詞的話:
asdfgh
如果是匹配前後不是英文字母的話:
[^a-zA-Z](asdfgh)[^a-zA-Z]?
『拾』 java中比較兩個字元串,例如String A[0] = "ab"; A[1] = "cd"; S
//比較字元串用==或者equals()
例子:if(字元串1==字元串2){
//相等
}
或者
if(字元串1.equals(字元串2)){
//相等
}