所有 Leetcode 問題似乎都沒有主要方法,我想知道如何在本地 IDE(比如 eclipse)中運行代碼?例如,我試圖運行這個:
Q: 撰寫一個方法/函式,將 String s 中的所有空格替換為“ ”。
代碼:
public class ReplaceSpace {
public String replaceSpace(String s) {
StringBuilder res = new StringBuilder();
for(Character c : s.toCharArray()) {
if(c == ' ')
res.append(" ");
else
res.append(c);
}
return res.toString();
}// that'll work in the Leetcode editor
public static void main(String[] args) {
String s = "We are happy.";
System.out.print(s.replaceSpace); //reports "cannot be resolved to a type" error
}
}
另外,如果有人能解釋一下為什么 Leetcode 編輯器可以在沒有 main 方法的情況下運行代碼,那就太好了。
uj5u.com熱心網友回復:
要在本地 IDE 中測驗代碼,只需提供您自己的 main. 預先撰寫的代碼通常包含非靜態方法。這為您提供了兩種測驗代碼的方法。
添加靜態
public class ReplaceSpace
{
public static String replaceSpace(String s)
{
...
}
public static void main(String[] args)
{
System.out.println (replaceSpace("We are happy"));
}
}
創建物件
public class ReplaceSpace
{
public String replaceSpace(String s)
{
...
}
public static void main(String[] args)
{
ReplaceSpace rs = new ReplaceSpace();
System.out.println (rs.replaceSpace("We are happy"));
}
}
uj5u.com熱心網友回復:
replaceSpace是ReplaceSpace類而不是String類的方法。 String是replaceSpace方法的回傳型別。您正在嘗試呼叫類物件replaceSpace上的方法。String
為了運行代碼,您需要實體化一個ReplaceSpace類的物件,然后replaceSpace通過傳遞要替換的字串作為引數來呼叫其物件上的方法。像這樣:
public static void main(String[] args) {
ReplaceSpace rs = new ReplaceSpace();
String replacedString = rs.replaceSpace("We are happy.");
System.out.println(replacedString);
}
另一種方法是使replaceSpace方法靜態并在沒有物件實體化的情況下呼叫該方法。
至于 Leetcode 如何在后臺運行代碼,他們不需要使用main方法來運行你的代碼。他們只是用詳盡的測驗用例為您的函式撰寫單元測驗來測驗您的解決方案,而不是通過主要方法運行您的代碼。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/422997.html
標籤:
上一篇:Maven將編碼更改為某些檔案
