「如果明天下雨,我就不去了」跟「如果我有錢,我就環遊世界」,中文都是「如果」,英文的動詞卻長得完全不一樣。這就是 if 用法最容易讓人搞混的地方,差別全在時態,時態決定你是在說真的,還是在做白日夢。這篇用日常對話,把 4 種類型的時態配法一個一個拆開來講清楚。
If 條件句有哪 4 種
if 用法的核心只有一句:時態決定可能性。 if 後面接現在式,代表事情很有可能發生;接過去式,代表不太可能,或是跟現實相反;接過去完成式,代表已經來不及了。整個條件句的結構就是「If + 條件,結果」,if 那半句放前面要加逗號,放後面就不用。
4 種類型的差別,一張表就能分清楚:

每一種後面都會拆開來講,先用 4 句日常生活的說法感受一下差別。
(1) If I skip breakfast, I get a headache by ten.
如果我沒吃早餐,到十點就會頭痛。
(2)
A: Are we still going to the night market tomorrow?
A: 我們明天還要去夜市嗎?
B: If it rains, we will go on Friday instead.
B: 如果下雨,我們就改星期五去。
(3) If I had a day off tomorrow, I would sleep until noon.
如果我明天放假,我會睡到中午。
(4) If I had set an alarm, I wouldn’t have overslept.
如果我有設鬧鐘,就不會睡過頭了。
Zero Conditional 零條件句
公式:If + 現在式,現在式。 這種句型講的是「只要 A 發生,B 就一定發生」,像是科學事實、生活習慣,或是機器的固定反應。裡面的 if 也可以直接換成 when,意思幾乎一樣。
有個判斷的小技巧:如果你可以在句子後面加上「每次都是這樣」,那八成就是零條件句。
(5)
A: Why do you always look so sleepy on Mondays?
A: 你為什麼星期一都看起來很想睡?
B: If I stay up late on Sunday, I can’t wake up on Monday.
B: 我如果星期天熬夜,星期一就爬不起來。
(6) If you leave milk out overnight, it goes bad.
牛奶放在外面一整晚就會壞掉。
(7) If my phone drops below 20 percent, it switches to power saving mode.
我的手機電量低於 20% 就會自動進入省電模式。
(8) If it’s a long weekend, the highway is always packed.
只要是連假,高速公路一定塞爆。
First Conditional 第一條件句
公式:If + 現在式,will + 原形動詞。 第一條件句講的是未來很有可能發生的事,是真的有機會,不是在幻想。結果那半句除了 will,也可以換成 can、may、should,或是直接用命令句。
另外,結果裡的 will 有時會換成 be going to,兩者的差別可以看 Will 和 Going To 的用法:will 偏向臨時決定,going to 偏向早就打算好。
(9)
A: Can you pick me up from the MRT station?
A: 你可以來捷運站接我嗎?
B: Sure, if I finish work by six, I will be there.
B: 沒問題,如果我六點前下班,我就會到。
(10) If the concert tickets go on sale tonight, I will buy two.
如果演唱會的票今晚開賣,我會買兩張。
(11)
A: Are you coming to hot pot on Saturday?
A: 你星期六會來吃火鍋嗎?
B: If my boss doesn’t make me work overtime, I will come.
B: 如果老闆沒有叫我加班,我就會去。
(12) If you need a ride, just text me.
如果你需要人載,傳訊息給我就好。
(13) If the package doesn’t arrive by tomorrow, I’ll call the store.
如果包裹明天還沒到,我就打電話給店家。
If 後面可以接 will 嗎?
不行,if 那半句不放 will。 這也是大家在查 if will 用法的時候,最想確認的一件事。will 是留給結果那半句用的,if 那半句直接用現在式就好,就算講的是「明天」還沒發生的事,if 後面也還是現在式。
- 錯誤寫法:If it will rain tomorrow, I will stay home.
- 正確寫法:If it rains tomorrow, I will stay home.

不過有兩個小例外。第一個是禮貌請求,If you will follow me 的意思是「麻煩您跟我來」。第二個是 will 講的不是未來,而是「這樣做會有什麼結果」,例如 If it will help,意思是「如果這樣有幫助的話」。這兩種在日常閒聊都不常出現,先記住主要規則就夠用了。
(14)
A: Should I bring an umbrella?
A: 我要帶傘嗎?
B: Yes, if it rains, you will need one.
B: 要,如果下雨你就會需要。
(15) If the bus is late again, I will take an Uber.
如果公車又誤點,我就叫 Uber。
(16) If you get there early, you will get a better seat.
如果你早點到,就能搶到比較好的位子。
(17) If it will make you feel better, I will apologize.
如果這樣能讓你好過一點,我就道歉。
(18) If you will follow me, I will show you to your table.
如果您願意跟我來,我帶您到座位。
If 後面可以接 would 嗎?
一樣不行,if 那半句也不放 would。 if would 用法的規則跟 will 很像:would 是結果那半句的角色,if 那半句要用過去式。所以 If I would have more time 是錯的,要說 If I had more time。
你可以這樣想:想像的情境裡,if 後面的時態往前退一步,結果的 would 就是 will 往前退一步的版本。例外也跟 will 一樣,只有禮貌請求才會出現,例如 If you would please wait here。
(19)
A: Why don’t you go to the gym?
A: 你為什麼不去健身房?
B: If I had more time, I would go every day.
B: 如果我有更多時間,我每天都會去。
(20) If I had a car, I would drive to Taichung every weekend.
如果我有車,每個週末我都會開去台中。
(21) I would say yes if they offered me a higher salary.
如果他們給我更高的薪水,我就會答應。
(22) If you would please wait here, the doctor will be with you shortly.
麻煩您在這裡稍等,醫生馬上就來。
Second Conditional 第二條件句
公式:If + 過去式,would + 原形動詞。 第二條件句用在兩種情況:一種是不太可能發生的白日夢,一種是跟現在事實相反的想像。雖然用的是過去式,但講的其實是現在或未來,過去式只是在告訴對方「這不是真的」。結果的 would 也可以換成 could 或 might,語氣會更委婉。
(23)
A: What would you do if you won 10 million NT dollars?
A: 如果你中一千萬台幣,你會做什麼?
B: I would buy a small apartment first.
B: 我會先買一間小公寓。
(24) If my apartment had a balcony, I would grow some plants.
如果我家有陽台,我就會種一些植物。
(25)
A: My coworker keeps taking credit for my work. What should I do?
A: 我同事一直搶我的功勞,我該怎麼辦?
B: If I were you, I would talk to our manager.
B: 如果我是你,我會去跟主管談。
If I were 跟 If I was
if I were 用法很單純:在寫作和考試裡,不管主詞是 I、he 還是 she,if 後面都用 were。口語裡 If I was 也很常見,尤其是美式英文,兩種都不算錯。這種「用退一步的時態來說不是真的」的口吻,跟 Wish、If only、Would rather 是同一個家族。
(26) If I were a cat, I would sleep all day.
如果我是貓,我會整天睡覺。
(27) If I was in Tokyo right now, I would be eating ramen.
如果我現在在東京,我一定在吃拉麵。
Third Conditional 第三條件句
公式:If + 過去完成式,would have + 過去分詞。 第三條件句講的是過去沒有發生的事,也就是「早知道就…」。事情已經結束了,所以只能後悔或檢討。if 那半句用的是過去完成式,如果你對 had + 過去分詞的用法還不熟,這裡最容易出錯。
結果那半句的 would have,跟單獨拿出來用的 would have、should have、could have 語氣各有不同:would have 是「就會了」,should have 是「應該要」,could have 是「本來可以」。
(28)
A: Why are you so tired today?
A: 你今天怎麼這麼累?
B: If I hadn’t watched that last episode, I would have gone to bed before midnight.
B: 如果我沒看最後那一集,我就會在半夜十二點前睡了。
(29) If I had checked the weather, I would have brought an umbrella.
如果我有看天氣預報,我就會帶傘了。
(30)
A: You missed the sale!
A: 你錯過特價了!
B: If I had known, I would have gone straight after work.
B: 如果我早知道,我下班就會直接去了。
(31) If we had booked the hotel earlier, it would have been cheaper.
如果我們早點訂飯店,就會便宜很多。
(32) If she had replied sooner, we could have finished the project on time.
如果她早點回覆,我們就能準時完成專案了。
Mixed Conditionals 混合條件句
混合條件句就是把兩個不同的時間混在一起,常見有兩種:
- 過去的條件,影響現在的結果:If + 過去完成式,would + 原形動詞
- 現在的狀態,影響過去的結果:If + 過去式,would have + 過去分詞
時態就是跟著時間走:if 那半句講的是過去,就用過去完成式;講的是現在的狀態,就用過去式。
(33) If I had saved more money last year, I would be on vacation right now.
如果我去年多存一點錢,我現在就在度假了。
(34)
A: Your Japanese is so good!
A: 你的日文說得真好!
B: If I hadn’t studied in Osaka, I wouldn’t speak it this well now.
B: 如果我沒去大阪念書,我現在不會說得這麼好。
(35) If I were more organized, I would have finished the report yesterday.
如果我更有條理,昨天就把報告做完了。
(36)
A: Why didn’t you join the hiking trip?
A: 你為什麼沒去健行?
B: If I were in better shape, I would have gone.
B: 如果我體力更好,我就去了。
Unless 用法
Unless 就是 if not,意思是「除非」。 unless 用法有個重點:unless 本身已經帶有「不」的意思,所以後面不用再加 not。Unless it doesn’t rain 是錯的,要說 Unless it rains。unless 最常搭配零條件句和第一條件句,很少跟想像類的句型混用。
另外別把它跟「就算」搞混,even if 和 even though 講的是「就算…也…」,方向跟 unless 完全相反。
(37)
A: Are we still hiking on Sunday?
A: 我們星期天還要去爬山嗎?
B: Unless it rains, yes.
B: 除非下雨,不然要。
(38) I won’t go to the party unless you come with me.
除非你跟我一起去,不然我不去派對。
(39)
A: Can I return this shirt?
A: 我可以退這件襯衫嗎?
B: Not unless you have the receipt.
B: 沒有收據就不行。
(40) Unless you have a reservation, you will have to wait at least an hour.
除非你有訂位,不然至少要等一個小時。
怎麼判斷該用哪一種
遇到不確定的句子,就照著下面的問題一題一題問自己,問到「是」的那一題,就是你要用的條件句。

拿幾句生活裡的說法來試試看:週末有空就去爬山,是未來很有可能的事,走第一條件句;廚房要是更大就會更常煮,是現實裡沒有的想像,走第二條件句;搭捷運就不會遲到,是已經遲到、來不及改的事,走第三條件句;按按鈕門就開,是每次都這樣,走零條件句。
(41) If I’m free this weekend, I will go hiking.
如果我這個週末有空,我就去爬山。
(42)
A: Do you ever cook at home?
A: 你會在家煮飯嗎?
B: If I had a bigger kitchen, I would cook more often.
B: 如果我有更大的廚房,我會更常煮。
(43) If I had taken the MRT, I wouldn’t have been late.
如果我搭捷運,就不會遲到了。
(44) If you press this button, the door opens.
按這個按鈕,門就會打開。
if 用法說穿了就是看時態,if 後面每退一步,可能性就降一級。下次想說「早知道」之前,先想想 if 後面該放哪個時態吧。
延伸閱讀:【Could be 和 Could have been 差在哪?一個講未來、一個講過去,用錯意思差很多】
如果你喜歡這篇文章的話,可以追蹤我們的 Threads 和 Facebook 唷!