Xem mẫu

  1. Các thành phần cơ bản trong Java Nguyễn Đức Hiển – Bài giảng Lập trình Java 1
  2. Nội dung  Chương trình đơn giản  Kiểu dữ liệu Java  Toán tử  Mảng  Kiểu chuổi (String)  Phương thức nhập, xuất Nguyễn Đức Hiển – Bài giảng Lập trình Java 2
  3. Chương trình đơn giản import java.io.*; class example { public static void main(string[ ] args) { System.out.println(“Hello!”); } } Nguyễn Đức Hiển – Bài giảng Lập trình Java 3
  4. Các kiểu dữ liệu  Java có hai loại kiểu dữ liệu chính: kiểu dữ liệu đơn nguyên và kiểu dữ liệu tham chiếu.  Các kiểu dữ liệu đơn nguyên  Các kiểu dữ liệu cơ sở  Nhiều kiểu tương tự như C (int, double, char, …)  Các biến lưu giữ các kiểu dữ liệu đơn nguyên luôn luôn chứa giá trị thực, không bao giờ là một tham chiếu.  Các kiểu dữ liệu tham chiếu  Các mảng và kiểu dữ liệu người dùng định nghĩa (thí dụ, các lớp, các giao tiếp,…)  Chỉ có thể được truy cập thông qua các biến tham chiếu. Nguyễn Đức Hiển – Bài giảng Lập trình Java 4
  5. Các kiểu dữ liệu đơn nguyên  Kiểu số nguyên  byte: 8 bits (-128 đến +127)  short: 16 bits (-32768 đến +32767)  int: 32 bits  long: 64 bits  Kiểu ký tự  char: 16 bits, (theo chuẩn unicode, không phải ASCII!)  Kiểu số thực  float:4 bytes (-3.4 x E38 đến +3.4 x E38)  double: 8 bytes (-1.7 x 10308 đến 1.7 x 10308)  Kiểu lôgic  boolean(true hoặc false)  Không giống C, không thể chuyển thành kiểu int. Nguyễn Đức Hiển – Bài giảng Lập trình Java 5
  6. Các toán tử  Số học  +, -, *, /, %, ++, --  Các toán tử trên bit  &, |, ^, ~, , …  Phép gán = , +=, -=, ...  So sánh  =, ==, !=  Toán tử Logic  && (&) , || (|) , ^ , ! Nguyễn Đức Hiển – Bài giảng Lập trình Java 6
  7. Chuyển kiểu  Thứ tự chuyển kiểu:  byte  short  int  long  float  double  Các ví dụ: Nguyễn Đức Hiển – Bài giảng Lập trình Java 7
  8. Kiểu dữ liệu tham chiếu  Sự khác nhau chính giữa kiểu dữ liệu đơn nguyên và kiểu tham chiếu là cách chúng được biểu diễn.  Các biến kiểu đơn nguyên giữ giá trị thực của biến  Các biến kiểu tham chiếu giữ giá trị tham chiếu tới đối tượng. Nguyễn Đức Hiển – Bài giảng Lập trình Java 8
  9. Ví dụ  Khai báo biến: int primitive = 5; String reference = “Hello”;  Sự biểu diễn bộ nhớ: Nguyễn Đức Hiển – Bài giảng Lập trình Java 9
  10. Kiểu mảng  Trong Java, mảng là kiểu dữ liệu tham chiếu  Bạn có thể định nghĩa một mảng với bất kỳ kiểu dữ liệu nào (kiểu đơn nguyên hay kiểu tham chiếu)  Java tự động kiểm tra giới hạn mảng ở thời gian chạy giúp cho việc truy cập chiều dài của một mảng Nguyễn Đức Hiển – Bài giảng Lập trình Java 10
  11. Khai báo biến mảng  Cách khai báo:  int myNumbers[];  String myStrings[];  Điều này chỉ tạo ra một biến tham chiếu (chưa tạo ra các phần tử mảng). Nguyễn Đức Hiển – Bài giảng Lập trình Java 11
  12. Tạo các phần tử mảng  Cú pháp:  myNumbers = new int[10];  myStrings = new String[10];  Để tạo ra đối tượng dữ liệu tham chiếu sử dụng toán tử new.  Các đối tượng String có thể được tạo ra từ các hằng chuổi  Các phần tử Mảng có thể cũng được tạo ra sử dụng các hằng số, hằng chuổi,… myNumbers = {1, 2, 3, 4, 5};  Lưu ý trong ví dụ trên, myStrings là một tham chiếu tới một mảng các tham chiếu. Nguyễn Đức Hiển – Bài giảng Lập trình Java 12
  13. Truy cập đến phần tử Mảng  Giống như trong C/C++  myNumbers[0] = 5;  myStrings[4] = “foo”;  Mảng có một trường chiều dài đặc biệt (length) có thể truy cập để xác định kích thước của một mảng.  Ví dụ:  for ( int i = 0; i < myNumbers.length; i++) myNumbers[i] = i; Nguyễn Đức Hiển – Bài giảng Lập trình Java 13
  14. Một số bài tập đơn giản  Viết chương trình nhập một mảng các ký tự. Sau đó nhập một ký tự rồi cho biết ký tự đó có trong mảng không ?  Viết chương trình giải: ax2 + bx + c = 0  Viết chương trình thực hiện các thao tác trên mảng: nhập, xuất, sắp xếp,…  Tính tổng: s = 1 + 3! + 5! + (2*n+1)!  Nhập số x, sau đó kiểm tra x có phải là số nguyên tố không ? Nguyễn Đức Hiển – Bài giảng Lập trình Java 14
  15. Kiểu chuổi (String)  Trong Java, String là một kiểu dữ liệu tham chiếu  String là một trong số các lớp có sẵn trong ngôn ngữ Java  Tuy nhiên, chúng không làm việc chính xác như tất cả các lớp khác.  Sự hỗ trợ bổ sung được xây dựng sẵn cho String như các toán tử chuổi và hằng chuổi. Nguyễn Đức Hiển – Bài giảng Lập trình Java 15
  16. Tạo chuổi  Như được đề cập, tạo ra đối tượng tham chiếu trong Java cần sử dụng toán tử new.  Chuỗi có thể được tạo:  String myString = new String(“foo”);  Tuy nhiên, hằng chuổi cũng có thể được sử dụng:  String myString = “foo”; Nguyễn Đức Hiển – Bài giảng Lập trình Java 16
  17. Các toán tử chuổi  Toán tử + chứa hỗ trợ đặc biệt cho kiểu dữ liệu String.  myString = “foo” + “bar”;  Và toán tử +=  myString = “foo”;  myString += “bar”; Nguyễn Đức Hiển – Bài giảng Lập trình Java 17
  18. So sánh chuổi  Toán tử == dùng để so sánh dữ liệu tham chiếu của chuổi (có cùng vị trí trong bộ nhớ không).  Ví dụ:  String string1 = “foo”;  String string2 = string1;  if(string1 == string2) System.out.println(“Yes”);  Kết quả là true nếu cả string1 lẫn string2 chứa một tham chiếu tới cùng vị trí trong bộ nhớ. Nguyễn Đức Hiển – Bài giảng Lập trình Java 18
  19. So sánh chuổi  Lớp String chứa các phương thức cho phép so sánh hai chuổi hơn là hai tham chiếu.  Ví dụ: No Yes Nguyễn Đức Hiển – Bài giảng Lập trình Java 19
  20. Sử dụng các phương thức String  Một số phương thức thường dùng:  charAt( )  startsWith()  endsWith( )  indexOf( )  toUpperCase( )  toLowerCase( )  trim( )  equals( ) …  Chi tiết xem Java API: http://java.sun.com/j2se/1.4.2/docs/api/index.html Nguyễn Đức Hiển – Bài giảng Lập trình Java 20
nguon tai.lieu . vn