Ruby有條件初始化。顯然,Java不是或不是?我儘量寫更多的文章,把範圍限制得儘可能小。Java:條件初始化?
import java.io.*;
import java.util.*;
public class InitFor{
public static void main(String[] args){
for(int i=7,k=999;i+((String h="hello").size())<10;i++){}
System.out.println("It should be: hello = "+h);
}
}
錯誤
Press ENTER or type command to continue
InitFor.java:8: ')' expected
for(int i=7,k=999;i+((String h="hello").size())<10;i++){}
^
拼圖
- 是否有可能分配一個值在while循環的聲明價值? 是 code1
- 在for-loop條件下的賦值? YES碼2
- 有條件的init NO
- 你能在循環分配不同類型的值? 是的回覆
- 在循環內初始化的一些規則?稍後聲明外部訪問值,那麼init呢?
1.代碼
import java.io.*;
import java.util.*;
public class InitFor{
public static void main(String[] args){
int k=5;
while((k=(k%3)+1)!=1){
System.out.println(k);
}
//PRINTs only 3
}
}
2. CODE
import java.io.*;
import java.util.*;
public class InitFor{
public static void main(String[] args){
int k=5;
for(;(k=(k%3)+1)!=1;){
System.out.println(k);
}
//PRINTs only 3
System.out.println(k);
// WHY DOES IT PRINT 1? Assign in for-loop!
}
}
原問題有許多不同種類的分配和初始化的部分(?) - - 單行100行代碼
for(int t=0,size=(File[] fs=((File f=f.getParentFile()).listFiles(filt))).size();fs==null;t++){if(t>maxDepth){throw new Exception("No dir to read");}}
什麼是你想實現什麼? – 2010-04-30 00:50:09
@MAS它應該打印「它應該是:hello = hello」,通過假設錯誤不存在。 – 2010-04-30 00:52:07