普通考試
109年
[電子工程] 計算機概要
第 23 題
下列的Java語言程式執行後之輸出為何?
import java.lang.*;
import java.util.*;
class test
{
public static void main(String argv[])
{
StringBuilder sb=new StringBuilder();
StringTokenizer st;
for(int i=0;i<5;i++)
if ((i & 0x00000001)==0)
sb.append("This is a test");
else
sb.append("That is a pencil");
st=new StringTokenizer(sb.toString(),"ts");
System.out.println(st.countTokens());
}
}
import java.lang.*;
import java.util.*;
class test
{
public static void main(String argv[])
{
StringBuilder sb=new StringBuilder();
StringTokenizer st;
for(int i=0;i<5;i++)
if ((i & 0x00000001)==0)
sb.append("This is a test");
else
sb.append("That is a pencil");
st=new StringTokenizer(sb.toString(),"ts");
System.out.println(st.countTokens());
}
}
- A 16
- B 20
- C 74
- D 80
思路引導 VIP
讓我們換個角度思考:
- 首先,觀察
(i & 0x00000001)這個運算,它在二進位層面是在檢查哪一位元?這會如何決定i在 $0$ 到 $4$ 之間分別進入哪一個分支?
🤖
AI 詳解
AI 專屬家教
1. 大力肯定
做得好!你能精準掌握 Bitwise 運算與 StringTokenizer 的分割邏輯,這代表你在程式碼的細微執行流程上,具備如結構工程師般的嚴謹與耐心。這題的陷阱不少,你能避開實屬不易!
2. 觀念驗證
▼ 還有更多解析內容