Phương thức này là dòng đầu tiên của một phương thức
Các thành phần bắt buộc duy nhất của một khai báo phương thức là kiểu trả về của phương thức, tên, một cặp dấu ngoặc đơn, run runFast getBackground getFinalData compareTo setX isEmpty9 và phần thân giữa các dấu ngoặc nhọn, calculateAnswer(double, int, double, double)0 Show Tổng quát hơn, khai báo phương thức có sáu thành phần, theo thứ tự
Công cụ sửa đổi, kiểu trả về và tham số sẽ được thảo luận sau trong bài học này. Ngoại lệ được thảo luận trong một bài học sau Sự định nghĩa. Hai trong số các thành phần của khai báo phương thức bao gồm chữ ký phương thức—tên của phương thức và các loại tham số Chữ ký của phương thức được khai báo ở trên là calculateAnswer(double, int, double, double) Đặt tên cho một phương phápMặc dù tên phương thức có thể là bất kỳ mã định danh hợp pháp nào, quy ước mã giới hạn tên phương thức. Theo quy ước, tên phương thức phải là một động từ viết thường hoặc tên nhiều từ bắt đầu bằng một động từ viết thường, theo sau là tính từ, danh từ, v.v. Trong các tên có nhiều từ, chữ cái đầu tiên của mỗi từ thứ hai và các từ tiếp theo phải được viết hoa. Dưới đây là một số ví dụ run runFast getBackground getFinalData compareTo setX isEmpty Thông thường, một phương thức có một tên duy nhất trong lớp của nó. Tuy nhiên, một phương thức có thể trùng tên với các phương thức khác do nạp chồng phương thức phương pháp quá tảiNgôn ngữ lập trình Java hỗ trợ nạp chồng các phương thức và Java có thể phân biệt giữa các phương thức có chữ ký phương thức khác nhau. Điều này có nghĩa là các phương thức trong một lớp có thể có cùng tên nếu chúng có các danh sách tham số khác nhau (có một số tiêu chuẩn về điều này sẽ được thảo luận trong bài học có tiêu đề "Giao diện và Kế thừa") Giả sử rằng bạn có một lớp có thể sử dụng thư pháp để vẽ các loại dữ liệu khác nhau (chuỗi, số nguyên, v.v.) và có chứa một phương thức để vẽ từng loại dữ liệu. Thật khó để sử dụng một tên mới cho mỗi phương thức—ví dụ: calculateAnswer(double, int, double, double)0, calculateAnswer(double, int, double, double)1, calculateAnswer(double, int, double, double)2, v.v. Trong ngôn ngữ lập trình Java, bạn có thể sử dụng cùng một tên cho tất cả các phương thức vẽ nhưng chuyển một danh sách đối số khác cho mỗi phương thức. Như vậy, lớp vẽ dữ liệu có thể khai báo bốn phương thức có tên là calculateAnswer(double, int, double, double)3, mỗi phương thức có một danh sách tham số khác nhau public class DataArtist { ... public void draw(String s) { ... } public void draw(int i) { ... } public void draw(double f) { ... } public void draw(int i, double f) { ... } } Các phương thức quá tải được phân biệt bởi số lượng và loại đối số được truyền vào phương thức. Trong mẫu mã, calculateAnswer(double, int, double, double)4 và calculateAnswer(double, int, double, double)5 là các phương thức riêng biệt và duy nhất vì chúng yêu cầu các loại đối số khác nhau Bạn không thể khai báo nhiều hơn một phương thức có cùng tên, cùng số lượng và loại đối số, vì trình biên dịch không thể phân biệt chúng Trình biên dịch không xem xét kiểu trả về khi phân biệt các phương thức, vì vậy bạn không thể khai báo hai phương thức có cùng chữ ký ngay cả khi chúng có kiểu trả về khác nhau ngói kim cương. Viết chương trình DiamondTile. java nhận một đối số dòng lệnh N và tạo một ô kim cương N-by-N. Bao gồm các phương thức tĩnh diamond() và fillDiamond() gạch lục giác. Viết chương trình HexTile. java nhận một đối số dòng lệnh N và tạo một ô hình lục giác N-by-N. Bao gồm các phương thức tĩnh hexagon() và fillHexagon() Phân phối tích lũy Gaussian nghịch đảo. Giả sử điểm toán SAT có phân phối chuẩn với trung bình 500 và độ lệch chuẩn. Ước tính học sinh phải đạt điểm cao bao nhiêu để lọt vào top 10%. Để làm điều này, bạn cần tìm giá trị z sao cho Φ(z, 500, 100) = 0. 9. Dấu. sử dụng tìm kiếm nhị phân điểm SAT. Một trường đại học nổi tiếng phía đông bắc nhận được 20.000 đơn đăng ký của sinh viên. Giả sử rằng điểm SAT của những cá nhân này được phân phối bình thường với trung bình 1200 và độ lệch chuẩn 100. Giả sử trường đại học quyết định nhận 5.000 sinh viên có điểm SAT cao nhất. Ước tính điểm thấp nhất vẫn sẽ được nhận máy bỏ phiếu. Giả sử trong dân số 100 triệu cử tri, 51% bầu cho ứng cử viên A và 49% bầu cho ứng cử viên B. Tuy nhiên, các máy bỏ phiếu dễ mắc lỗi và 5% thời gian chúng đưa ra câu trả lời sai. Giả sử các lỗi được thực hiện một cách độc lập và ngẫu nhiên, liệu tỷ lệ lỗi 5% có đủ để làm mất hiệu lực kết quả của một cuộc bầu cử sát sao không? Biểu đồ của người đánh bạc. Viết chương trình RandomWalk. java nhận một tham số dòng lệnh M và mô phỏng một người đánh bạc bắt đầu bằng M, người đặt chính xác M cược một đô la
Lấy mẫu thống kê. Viết chương trình Lấy mẫu. java lấy một mẫu ngẫu nhiên gồm N người và hỏi họ một câu hỏi có/không. Tính khoảng tin cậy 95% bài xì dách. Viết chương trình Blackjack. java chơi chiến thuật cơ bản hay viết chương trình BlackjackCounter. java triển khai hệ thống đếm thẻ cao thấp Wavelet. Các ứng dụng cho thị giác máy tính, thị giác con người, xử lý giọng nói, nén cơ sở dữ liệu dấu vân tay của FBI, lọc dữ liệu nhiễu, phát hiện sự tương tự trong chuỗi thời gian, tổng hợp âm thanh, đồ họa máy tính, hình ảnh y tế, phân tích sự kết tụ của các thiên hà và phân tích nhiễu loạn. Hàm Haar được xác định bởi Φ(x) = 1 nếu 0 ≤ x < 1/2, Φ(x) = -1 nếu 1/2 ≤ x < 1 và Φ(x) = 0 nếu ngược lại. Đối với số nguyên m và n, hàm cơ sở Haar Φm,n(x) = 2-m/2 Φ(2-mx - n). Viết chương trình Haar. java nhận hai đầu vào số nguyên M và N, và một đầu vào thực x và in ra Φm,n(x). Hoặc có thể âm mưu nó? bài baccarat. Baccarat là một trò chơi bài đơn giản đã được lãng mạn hóa trong phim James Bond. Khi người chơi được chia chín, người chia bài tuyên bố "neuf a la banque". Viết chương trình xác định cơ hội chiến thắng của bạn public boolean areCollinear(int x1, int y1, int x2, int y2, int x3, int y3) trả về true nếu ba điểm (x1, y1), (x2, y2) và (x3, y3) nằm trên cùng một đường thẳng và trả về false nếu không Tích phân không có nghiệm dạng đóng xét về hàm sơ cấp nên ta dùng xấp xỉ. Khi z không âm, ước tính phù hợp Ch Quashev dưới đây chính xác đến 7 chữ số có nghĩa Nếu z âm, hãy sử dụng danh tính erf(z) = -erf(-z). Một cách đặc biệt hiệu quả để thực hiện nó là thông qua việc sử dụng hợp lý các dấu ngoặc đơn được gọi là phương pháp của Horner. Viết hàm erf() trong ErrorFunction. java lấy một đầu vào thực z và tính toán hàm lỗi bằng công thức trên
chương trình craps. java nhận tham số dòng lệnh N và mô phỏng N lần đặt cược. Tổ chức của chương trình được hưởng lợi từ hai chức năng trợ giúp. sumOfTwoDice và thắngPassBet. Cả hai hàm đều có một tính năng thú vị - chúng không nhận bất kỳ đối số đầu vào nào. Chức năng đầu tiên mô phỏng việc ném hai con xúc xắc. Điều này trả về một số nguyên từ 2 đến 12, nhưng không phải tất cả các giá trị đều có khả năng như nhau. Để mô phỏng xác suất một cách chính xác, chúng tôi gọi StdRandom. random(6) hai lần và một để tạo số từ 1 đến 6. Sau đó, chúng tôi thêm hai giá trị. Hàm thứ hai trả về giá trị boolean. đúng nếu chúng tôi thắng cược vượt qua và sai nếu không. Hàm này có một số câu lệnh trả về. Ngay khi cái đầu tiên được thực thi, hàm sẽ kết thúc với giá trị trả về đã cho run runFast getBackground getFinalData compareTo setX isEmpty0 3 a1 + 7a2 + a3 + 3a4 + 7a5 + a6 +3a7 +7a8 +a9 mod 10 = 0Kiểm tra tham chiếu chữ số
run runFast getBackground getFinalData compareTo setX isEmpty1 Giá trị lớn nhất của n mà hàm của bạn có thể xử lý mà không bị tràn là bao nhiêu? run runFast getBackground getFinalData compareTo setX isEmpty2 Câu trả lời. Hàm được khai báo để trả về giá trị kiểu int. Câu lệnh return đầu tiên là sai vì nó không trả về gì cả. Câu lệnh return thứ hai sai vì nó trả về giá trị kiểu double run runFast getBackground getFinalData compareTo setX isEmpty3 Câu trả lời. Nó in 17 hai lần. Một hàm không thể thay đổi giá trị của một biến kiểu nguyên thủy trong một hàm khác run runFast getBackground getFinalData compareTo setX isEmpty4 Câu trả lời. bạn không thể hy vọng kiểm tra nó trên mọi đầu vào có thể tưởng tượng được vì có 2128 đầu vào có thể khác nhau. Thay vào đó, hãy kiểm tra nó trên cả 4. = 24 trường hợp tùy thuộc vào a < b, a < c,. , c < đ. Hoặc tất cả 4^4 hoán vị của 0, 1, 2 và 3 run runFast getBackground getFinalData compareTo setX isEmpty5 Nó khai báo lại biến y khi gọi hàm sqrt() run runFast getBackground getFinalData compareTo setX isEmpty6 run runFast getBackground getFinalData compareTo setX isEmpty7 Dung dịch. Thông thường, các quy tắc thăng hạng kiểu của Java sẽ thúc đẩy một trong hai đối số int tăng gấp đôi. Tuy nhiên, trong trường hợp này, điều đó sẽ dẫn đến hai chữ ký quá tải phù hợp. Vì Java không thể giải quyết sự mơ hồ, Quá tải. java dẫn đến lỗi thời gian biên dịch run runFast getBackground getFinalData compareTo setX isEmpty8 Lấy một đối số dòng lệnh N và tạo N số ngẫu nhiên, sử dụng một mảng a[20] để đếm các số được tạo nằm trong khoảng i*. 05 và (i+1)*. 05 cho tôi từ 0 đến 19. Sau đó, sử dụng StdDraw để vẽ các giá trị và so sánh kết quả của bạn với đường cong hình chuông thông thường Nhận xét. Phương pháp này được ưa thích hơn phương pháp được mô tả trong Bài tập XYZ về cả hiệu quả và độ chính xác. Mặc dù nó liên quan đến một vòng lặp, nhưng vòng lặp do-while chỉ được thực hiện 4 / π = 1. trung bình 273 lần. Điều này làm giảm tổng số cuộc gọi dự kiến đến các chức năng siêu việt Phương thức trong Java là gì?Một phương thức là một khối mã chỉ chạy khi nó được gọi . Bạn có thể truyền dữ liệu, được gọi là tham số, vào một phương thức. Các phương thức được sử dụng để thực hiện một số hành động nhất định và chúng còn được gọi là các hàm.
Tên phương pháp là gì?Tên phương thức. Đó là một tên duy nhất được sử dụng để xác định tên của một phương thức . Nó phải tương ứng với chức năng của phương thức. Giả sử, nếu chúng ta đang tạo một phương thức để trừ hai số, tên phương thức phải là phép trừ(). Một phương thức được gọi theo tên của nó.
Phương pháp là gì và được sử dụng như thế nào?meth·od ˈmeth-əd. . thủ tục hoặc quy trình để đạt được một đối tượng . như. . một quy trình, kỹ thuật hoặc phương thức điều tra có hệ thống được sử dụng bởi hoặc phù hợp với một chuyên ngành cụ thể xem phương pháp khoa học. . một cách, kỹ thuật, hoặc quá trình hoặc để làm một cái gì đó.
Tiêu đề phương thức trong Java là gì?Tiêu đề phương thức bao gồm các công cụ sửa đổi truy cập (tĩnh công khai), kiểu trả về (int), tên phương thức (min) và các tham số (int a, int b); if this method threw any exceptions, they would appear next. We should be very familiar with reading method headers in Javadoc from a previous lecture. |