Chủ đề: Lệnh Break trong tìm kiếm
-
02-04-2014, 07:00 AM #1Junior Member
- Ngày tham gia
- Jan 2015
- Bài viết
- 0
Lệnh Break trong tìm kiếm
hi all,
mình practice bài tập mảng java trong diễn đàn : http://android.vn/threads/mien-phi-khoa-hoc-lap-trinh-java.25642/
yêu cầu đề bài: nhập vào tên sinh viên, sau đó tìm trong mảng xem tên này có tồn tại hay không ? nếu có, in ra là "có", nếu không thì in ra là "không".
sau đây là code của mình
Mã nguồn HTML:
+ nếu tên sinh viên nhâp vào có sẵn trong mảng thì :
co ton tai trong danh sach
khong co ton tai trong danh sach
+ nếu tên sinh viên nhâp vào không có sẵn trong mảng thì :
khong co ton tai trong danh sach
khong co ton tai trong danh sach
---------------------------------------------------
mình không hiểu tại sao khi không có "break", lúc nào cũng in ra 2 thông báo.
nếu thêm vào lênh break, thì chỉ có 1 thông báo.
các bạn có thể giúp mình giải đáp, nếu trường hợp không có /có break thì java chạy như thế nào ?
cảm ơn các bạn nhiều.
-
02-06-2014, 07:00 AM #2Junior Member
- Ngày tham gia
- Mar 2014
- Bài viết
- 0
bạn xem thế nào chứ mình chạy có ra 2 thông báo như bạn đâu :d chắc code ko sai đâu.
mình dùng eclipse nhé ^^
-
02-09-2014, 07:00 AM #3Junior Member
- Ngày tham gia
- Dec 2014
- Đang ở
- HCM
- Bài viết
- 0
Gửi bởi vui_ve_nao
-
02-11-2014, 07:00 AM #4Junior Member
- Ngày tham gia
- Jun 2014
- Bài viết
- 0
Gửi bởi cuocdoi
-
02-11-2014, 07:00 AM #5Junior Member
- Ngày tham gia
- Jul 2015
- Bài viết
- 6
lỗi logic rồi bạn ơi.
1. trường hợp có break: nếu tồn tại hay không tồn tại thì vòng for cũng chỉ duyệt được phần từ đầu tiên của mảng
2. trường hợp không break: vòng for duyệt tất cả các phần tử của mảng, nhưng với mỗi phần tử tồn tại, chương trình sẽ in 1 thông báo: có hay không
mình nghĩ bạn nên đặt 1 cái cờ (bool flag) và sét giá trị mặc định là false, nếu trong vòng for là tồn tại thì chuyển thành true (thêm break ở đây để tối ưu hóa code), sau đó dựa vào biến flag đó để in thông báo (ngoài vòng for). mình dự là thế
-
02-11-2014, 07:00 AM #6Junior Member
- Ngày tham gia
- Jul 2015
- Bài viết
- 15
Gửi bởi khanhmd
Gửi bởi cuocdoi
- bạn in thông báo trong vòng for thì là in cho từng phần tử rồi, mảng bạn có 2 phần tử nên sẽ in ra từng ấy thông báo
- sử dụng như cách của bạn khanhmd là ok.
-
03-09-2014, 07:00 AM #7Junior Member
- Ngày tham gia
- May 2015
- Bài viết
- 0
Gửi bởi khanhmd
-
03-13-2014, 07:00 AM #8Junior Member
- Ngày tham gia
- Jun 2014
- Bài viết
- 0
// khai bao bien flag de bao hieu ton tai hay ko ton tai
// gia su false la khong ton tai
boolean flag = false;
for( i=0; i < arrstr.length ; i++)
{
if (tim.equals(arrstr)== true)
{
//co ton tai, break khoi vong lap luon cho toi uu toc do
flag = true;
break;
}
}
if (flag) {
system.out.println ("co ton tai trong danh sach " );
} else {
system.out.println ("khong ton tai trong danh sach " );
}
chung cư cao cấp Millennium chủ đầu tư Masterise Homes ngân hàng hỗ trợ nhiều mảng xanh tiện nghi vô tận. Millennium canhomillennium ngân hàng hỗ trợ nhiều lựa chọn dự án trung tâm. Căn hộ chung cư...
Millennium sở hữu lâu dài nhất khu vực