調用變量我有基於以下代碼的問題:從主要方法
public class LoginCaptchaChrome {
public static void main(String[] args) throws IOException, InterruptedException{
String tc = args[0];
String address = args[1];
String test_data = args[2];
String test_result = args[3];
System.setProperty("webdriver.chrome.driver", "C:\\Users\\Lam Chio Meng\\Desktop\\work\\chromedriver_win32\\chromedriver.exe");
//Do other stuff
}
//runTest is called from a different class
public static void runTest(String string0, String string, String string1) throws InterruptedException, IOException{
WebDriver login = new ChromeDriver();
System.out.println(login);
login.get(address);
//Do other things
}
}
我從通過命令提示符下執行過程中傳遞的參數獲得值tc,address,test_data
和test_result
。現在,我想將address
的值傳遞給位於runTest方法中的login.get(address)
。
我現在無法這樣做,因爲我知道要發生這種情況,變量address
必須在主方法之外聲明。我不能在主方法外部聲明address
變量,因爲它從命令提示符處接收參數。請記住runTest方法已被分配爲接受來自不同類的另一個方法的值。希望能向大家提供如何在runTest方法中將主要方法中的address
值傳遞給address
變量的建議。
「我不能聲明地址變量的主要方法外,因爲它是從命令提示接收arguements。」, - 如何分配'main'方法中的變量限制它不被聲明爲字段? – user3707125
嗨用戶,感謝您的反饋。我相信這是因爲如果我在主方法之外聲明它們,我將無法接受從命令提示符執行期間傳遞的爭論。這有助於澄清?如果我在這方面有所欠缺,我很抱歉。基本上,我會將這段代碼導出到jar文件中,並且將通過java -jar c:\ Test \ LoginCaptchaChrome test1 www.test.com c:\ testdata \ data.xlsx c:\ testresult \ result.xlsx – lamCM
「如果我在主要方法之外聲明它們,我將無法接受從命令提示符執行期間傳遞的爭論。「 - 爲什麼? – user3707125