我不完全確定這是否可以在Java中使用,但是如何使用if語句之外的if語句聲明的字符串?如果有人能夠幫助我解決這個問題,我會很感激,我一直在努力幾個小時,似乎無法得到任何工作。在if語句之外使用變量
回答
你不能因爲variable scope。
如果您在if
語句中定義變量,那麼它只會在if
語句的範圍內可見,其中包括語句本身和子語句。
if(...){
String a = "ok";
// a is visible inside this scope, for instance
if(a.contains("xyz")){
a = "foo";
}
}
您應該在範圍之外定義變量,然後在if
語句中更新其值。
String a = "ok";
if(...){
a = "foo";
}
這將工作,但我需要使用字符串在if語句之外的if語句中定義的方式......如果這是有道理的。 – KrazyTraynz
用一些默認值(如null)初始化它們,在if塊中更新它們,然後在塊外使用它們時,它們將具有正確的值;你也可以檢查它們的值是否保持默認值。 – resilva87
工作,謝謝! – KrazyTraynz
你需要一個變量聲明和分配區分。
String foo; // declaration of the variable "foo"
foo = "something"; // variable assignment
String bar = "something else"; // declaration + assignment on the same line
如果您嘗試使用聲明的變量沒有分配的值,如:
String foo;
if ("something".equals(foo)) {...}
你會得到一個編譯錯誤,因爲變量沒有分配任何東西,因爲它是唯一的聲明。
在你的情況,你聲明瞭一個條件塊
if (someCondition) {
String foo;
foo = "foo";
}
if (foo.equals("something")) { ... }
裏面的變量,因此它僅僅是「看得見」是塊中。您需要將該聲明移到之外並以某種方式爲其分配一個值,否則您將得到有條件的分配編譯錯誤。一個例子將是使用一個else
塊:在`if`之前聲明
String foo = null;
if (someCondition) {
foo = "foo";
}
- 1. if語句之外的變量訪問
- 2. 訪問'if'語句之外的變量
- 3. 如何使用if語句之外的if語句中聲明的變量?
- 4. 使用變量if語句
- 5. 將變量值從if語句傳遞到if/else之外
- 6. 如何在if語句中初始化一個變量並在if語句之外使用它
- 7. 如何在已經在if語句中聲明的if語句之外使用變量
- 8. 在if/else語句中使用變量
- 9. JavaScript if if語句變量
- 10. 如何在IF之外使用變量
- 11. 變量之前或IF語句值後
- 12. 在mysql語句中使用局部變量IF語句
- 13. 多個If語句使用變量
- 14. 使用帶變量的IF語句
- 15. 從IF語句中使用變量
- 16. 使用if語句的Javascript變量值
- 17. 使用變量名的SASS @if語句
- 18. Objective C - XCode無法識別if語句之外的變量
- 19. 聲明變量之外的if語句不工作
- 20. 如何訪問if語句之外的變量
- 21. 如何在if語句中定義變量並在該語句之外使用它們?
- 22. c#語句變量用法語句之外
- 23. if語句中的變量
- 24. PowerShell IF語句變量
- 25. if語句變量與
- 26. 變量中的if語句
- 27. 變量/函數if語句
- 28. 變量和IF/ELSE語句
- 29. if語句檢查變量
- 30. if語句中的變量
或分配一個默認值(空?)聲明字符串?需要一些代碼來澄清你在問什麼! – John3136
除非將其分配給在變量外部聲明的變量,否則不能。也許你可以發佈你有問題的代碼的一部分,我們可以幫助你。 –