- Phân tích cú pháp XML AJAX/jQuery
- Sơ đồ XML với Đa kế thừa
- Tuần tự hóa Enum Json so với XML
- XML loại đơn giản, nội dung đơn giản, loại phức tạp, nội dung phức tạp
Tôi mới làm quen với golang và muốn hiểu cách hoạt động của câu lệnh select https://www.tutorialspoint.com/go/go_select_statement.htm
gói chính
nhập khẩu "fmt"
hàm main() {
var c1, c2, c3 kênh int
biến i1, i2 int
lựa chọn {
trường hợp i1 = <-c1:
fmt.Printf("đã nhận ", i1, " từ c1\n")
trường hợp c2 <- i2:
fmt.Printf("đã gửi ", i2, " đến c2\n")
trường hợp i3, ok := (<-c3): // giống như: i3, ok := <-c3
nếu được {
fmt.Printf("đã nhận ", i3, " từ c3\n")
} khác {
fmt.Printf("c3 đã đóng\n")
}
mặc định:
fmt.Printf("không có giao tiếp\n")
}
}
Hiện tại không có lời giải thích nào cho các kênh. Bây giờ tôi không biết làm thế nào để kích hoạt đầu ra khác thành "không có giao tiếp".
Có ai có thể cho tôi ví dụ cho từng trường hợp không?
1 Câu trả lời
lựa chọn
Lựa chọn câu lệnh trường hợp
Hoạt động truyền thông của ai sẽ không bị chặn? Nếu có nhiều trường hợp giao tiếp. op không chặn, mà được chọn ngẫu nhiên.
Bởi vì trong ví dụ này tất cả các hoạt động giao tiếp sẽ bị chặn và bởi vì mặc định
Điều kiện là nó sẽ được thực hiện.
Để "kích hoạt" một trường hợp khác, bạn phải đảm bảo sự giao tiếp của trường hợp đó. op sẽ không bị chặn. Trong ví dụ này, không ai gửi hoặc nhận bất cứ thứ gì từ bất kỳ kênh nào được sử dụng trong ví dụ. Thậm chí chúng còn chưa được khởi tạo nữa. Gửi và nhận từ không
Kênh bị chặn mãi mãi (xem Kênh chưa được khởi tạo hoạt động như thế nào? ). Vì vậy, bạn nên làm như sau: khởi tạo một kênh và gửi đến kênh đó/nhận từ kênh đó trong những trường hợp bạn muốn kích hoạt kênh đó. Ví dụ:
c1 = make(chan int, 1)
c1 <- 1
Đoạn mã này khởi tạo c1
Một kênh có bộ đệm là 1 và gửi giá trị vào đó. Vì vậy trong lựa chọn
Khai báo hoạt động giao tiếp saui1 = <-c1
sẽ không chặn, vì vậy mục này sẽ được chọn và đầu ra sẽ là:
nhận được 1 từ c1
hiện hữu Đi đến Sân chơi (Lưu ý: Tôi sẽ Inf()
Cuộc gọi được thay đổi thành InIn()
. )
Lưu ý rằng việc gửi/nhận từ kênh có thể xảy ra đồng thời trên các goroutine khác. Để đơn giản, tôi đã chọn một kênh đệm và cùng một goroutine để nó hoạt động như bạn mong đợi ngay cả trên Go Playground.
Thông tin thêm về các kênh:Kênh Golang được sử dụng để làm gì?
Liên quan đến ví dụ về câu lệnh lựa chọn kênh, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/50039483/
Tạo "Cuộc trò chuyện về cướp biển" với tùy chọn chọn tay trái hoặc tay phải. Tôi muốn nó trả lời tích cực cho các cách viết khác nhau của "left" và "right" (như bạn sẽ thấy trong mã), tuy nhiên, khi tôi thêm mã "else" cuối cùng cho tất cả các đầu vào không phải là "right" hoặc "left", nó cung cấp cho tôi một
Câu lệnh With thực thi một loạt các câu lệnh trên một đối tượng. Với các câu lệnh đối tượng Kết thúc bằng tham số đối tượng Phần bắt buộc
Câu lệnh While...Wend Thực thi một loạt các câu lệnh trong khi điều kiện được chỉ định là Đúng. Trong khi điều kiện Phiên bản [stat
Vì vậy, tôi có một vấn đề nhỏ với đoạn mã tôi đang làm. trong khi Đúng: r = input("Dòng: ") n = r.split() nếu r == " ":
Tôi có một mảng các đối tượng: var contacts = [ { "firstName": "Akira", "lastName": "Laine", "number"
int main() { int f=fun(); ... } int fun() { return 1; return 2; } Trong chương trình trên, khi một hàm được gọi từ hàm main
Tôi có rất nhiều câu lệnh if, câu lệnh if lồng nhau và câu lệnh if-else trong dự án của mình và tôi đang nghĩ đến việc thay đổi chúng thành câu lệnh switch. Một số trong số chúng sẽ có các câu lệnh chuyển đổi lồng nhau. Tôi biết rằng các câu lệnh switch thường hiệu quả hơn về mặt biên dịch.
Các câu lệnh Rem chứa các bình luận giải thích trong chương trình. Rem comment hoặc ' comment Tham số comment là văn bản comment cần đưa vào. Nên có một khoảng cách giữa từ khóa Rem và bình luận.
Câu lệnh ReDim khai báo một biến mảng động ở cấp độ thủ tục và phân bổ hoặc phân bổ lại không gian lưu trữ. ReDim [Bảo tồn] varname(subscripts) [, varname(subscripts)]
Câu lệnh Randomize khởi tạo trình tạo số ngẫu nhiên. Ngẫu nhiên [số] Tham số số có thể là bất kỳ biểu thức số hợp lệ nào. Mô tả Randomize sử dụng tham số số để khởi tạo
Câu lệnh Public định nghĩa các biến public và phân bổ không gian lưu trữ. Định nghĩa các biến riêng tư trong khối Class. Công khai varname[([subscript])][, varname[([subscript])
Câu lệnh Sub khai báo tên của một thủ tục Sub, các tham số của nó và mã tạo nên phần thân của nó. [Công khai [Mặc định]|Riêng tư] Tên phụ [( arglist )]
Câu lệnh Set gán một tham chiếu đối tượng cho một biến hoặc thuộc tính, hoặc liên kết một tham chiếu đối tượng với một sự kiện. Đặt objectvar = {objectexpression | Tên lớp mới
Tôi có khối mã này và đôi khi câu lệnh if đầu tiên chạy trước và đôi khi câu lệnh if thứ hai chạy trước. Tôi không chắc tại sao điều này lại xảy ra vì tôi nghĩ JavaScript là đồng bộ. đối với (hãy để i = 0; i < dataObje
Đây là mã javascript, tôi muốn viết nó như thế này: nếu người đó trả lời có, hãy trả lời "thật tuyệt", nếu người đó trả lời không, hãy trả lời "Tôi sẽ làm bạn vui", nếu người đó trả lời câu hỏi có chứa "có" hoặc "không", hãy nói "chỉ cần nhập" có hoặc không, không có gì
Đây là bài tập tôi có và tôi đang cố gắng thực hiện nó chỉ bằng các câu lệnh if ngắn, lỗi duy nhất tôi gặp phải là khi sử dụng "(0.5<=ratio<2 )", ngoài ra thì cấu trúc đó có đúng không? Máy quét scn = Máy quét mới(
Có cách nào để sử dụng câu lệnh if trong câu lệnh select không? Tôi không thể sử dụng câu lệnh Case trong trường hợp này. Thực ra tôi đang sử dụng iReport và tôi có một tham số. Điều tôi muốn làm là nếu người dùng không nhập một tham số cụ thể, nó sẽ chọn tất cả các trường hợp.
Câu hỏi này đã có câu trả lời ở đây: Đã đóng cách đây 11 năm. Có thể trùng lặp: Nếu so với Tốc độ chuyển mạch Tôi sẽ sử dụng C++ làm ví dụ, nhưng câu hỏi tôi sẽ hỏi không liên quan đến ngôn ngữ cụ thể. Ý tôi là một
Câu lệnh Property Set Trong khối Class, khai báo tên, tham số và mã tạo thành phần thân của một thủ tục Property dùng để thiết lập tham chiếu đến một đối tượng. [Công khai | Riêng tư] Pro
Câu lệnh Property Let trong khối Class khai báo tên, tham số, mã, v.v., tạo nên phần thân của quy trình Property sẽ được gán (tập hợp). [Công khai | Riêng tư] Prop
Tôi là một lập trình viên xuất sắc, rất giỏi!