2 回答

TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個贊
你發(fā)的問題是不是有些歧義?
給出的第二個圖片中的?F:\day06?中的 \?是反斜線。而圖片下方的文字“是因?yàn)?strong>這里用的是斜杠......”中的“這里”指的是上圖中的嗎?? ?可那個是反斜線??!
/?是斜線
\?是反斜線
Windows操作系統(tǒng)使用反斜線作為路徑中目錄的分隔符。
我大致能猜到你的問題。你的疑問是不是:在代碼中以字符串形式寫出路徑,就需要寫兩條反斜線,比如這樣?a.method("F:\\day06");? ? 那為什么第二個圖片中又不需要寫兩條反斜線?
通常你遇到寫兩條反斜線的寫法的情形都是在路徑被表示成字符串字面量形式時,寫兩條線路的原因是反斜線在字符串字面量中是轉(zhuǎn)義字符!
如果你想表示的路徑是?F:\day,且你需要將這個寫成字符串,別忘了字符串中 \?作為轉(zhuǎn)義字符,會被解釋為轉(zhuǎn)義后面的字符;而在字符串中想要表示反斜線本身就需要寫成 \\。所以當(dāng)你需要在代碼中把Windows操作系統(tǒng)的路徑寫成字符串時,就要寫成 F:\\day,這樣這個字符串本身才會表示?F:\day。
而在其他環(huán)境下可能就不會如此,比如在第二個圖片中的命令行下,\?不會被當(dāng)作轉(zhuǎn)義字符解釋,所以你就照直把路徑寫出來即可,如 F:\day。
添加回答
舉報(bào)