[問題] integer轉String ?
以前大學基礎太差 有些觀念不是很清楚 Orz..
想請大家幫忙看一段java code
public static void main(String[] args)
{
Socket s = null;
try
{
int serverPort = 9090;
System.out.println("Client Start!");
s = new Socket("127.0.0.1", serverPort);
OutputStream out = s.getOutputStream();
int data = 42;
for (int i = 0; i < 4; i++)
{
System.out.println("Sending: " + (data & 0xff));
out.write(data);
data >>= 8;
}
s.close();
}
catch (Exception e)
{
System.out.println("Error:" + e.getMessage());
}
}
有幾個問題不是很確定:
1. 為什麼需要做&0xff呢? 是因為要把integer轉成String嗎?
2. 需要轉成String的原因是, println的"Sending:"已經是String了,
所以後面就要把integer轉成string嗎?
我是java新手, 之前寫C就可以寫"Sending:" %d
所以不是很確定java的用法
3. 第三個紅色標示處, >>, 不太懂這個程式裡面 >> shift right的用意所在
問題可能有點笨
請大家鞭小力一點 感激不盡!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 75.6.237.125
※ 編輯: Racci 來自: 75.6.237.125 (09/10 16:59)
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):