我對InputStream類的一種方法有疑問,因爲它對我來說似乎無法工作。InputStream.read(byte)方法如何工作?
讓我們有這樣的事情:
InputStream is;
byte[] b = new byte[64];
is.read(b);
// and now the byte array b contains data comming through InputStream???
我會明白,如果.read()
方法的使用將是這個樣子:
b = is.read();
由於讀方法將返回字節數組。
但是,真正的方法怎麼能寫出一些東西給它的參數,並讓它在它自身之外可見呢?
這就像我會有這樣的:
String myString = "myText";
public void myMethod(String s) {
s = "abc123";
}
myMethod(myString);
// and now is the content of myString equal to "abc123" instead of "myText" ???
// ANSWER: no!
感謝您的答覆。
對象引用是按值傳遞。您無法更改其引用的對象,但可以更改其內容。即它只是一個淺拷貝。 –
沒有'InputStream.read(字節)方法'這樣的事情。有一個讀(byte [])'方法。它對你的問題有所不同。 – EJP