Giải thích cú pháp vòng lặp for

Mình tìm trên mạng đụng đoạn code này.

File[] files = dir.listFiles();
    for(File file : files){
        if(file.isDirectory()){
            //
        }else{
            //add mp3s to list here
        }
    }

nó sẽ liệt kê file trong thư mục. Trong vòng lặp for có tham số ấy for(File file : files), mình không hiểu nó như thế nào. Ai giải thích cho mình được không? Thanks :slight_smile:

1 Like

mình chưa học Java nhưng có vẻ cái này giống foreach trong một số ngôn ngữ khác.
biến files là 1 tập các file (các giá trị mang kiểu File) trong cái thư mục dir nào đó.
rồi với mỗi biến file kiểu File mang giá trị của 1 phần tử trong files nó sẽ làm công việc trong vòng for.


à mà bạn post code nhiều hơn 1 dòng thì nên để trong cặp 3 dấu ` nhé :blush:

3 Likes

cảm ơn bạn :slight_smile:

1 Like

for ( counter : array ) tương tự như for-each nhé. Trong trường hợp này bạn lấy một mảng tất cả các file có trong thư mục (vd array length = 69 nhé) thì đưa vào, cái thằng thể hiện nó sẽ lặp từ đầu -> cuối mảng cho bạn (69 lần)

2 Likes

như foreach mình hiểu rồi, cảm ơn 2 bấc nhé. à mà nó cho ngược tham số à foreach($mảng as $biến) cái này nó cho mảng vào sau @@~

1 Like

PHP thì mảng trước, biến sau
C# thì biến trước, mảng sau. tương tự cái này, Javascript nữa.

3 Likes

ok ok :slight_smile:

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?