1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình Java – Chương 1: Lập trình cơ bản với ngôn ngữ Java

109 95 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 109
Dung lượng 1,99 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Lập trình Java Chương 1: Lập trình cơ bản với ngôn ngữ Java cung cấp cho người học các kiến thức: Môi trường lập trình, chương trình đầu tiên, kiểu dữ liệu, nhập xuất ở màn hình Console, các cú pháp rẽ nhánh, lặp,... Mời các bạn cùng tham khảo.

Trang 2

Phát triển UD CSDL 2

Môi trường, cấu trúc chương trình,

kiểu dữ liệu

Trang 4

Môi trường lập trình

• Netbeans IDE 7.2

Trang 6

Chương trình đầu tiên

• File � New Project …

Trang 7

Chương trình đầu tiên

• Thi t l p: Project name, location, folder Finish ế ậ

Trang 8

Chương trình đầu tiên

Trang 9

Chương trình đầu tiên

• Ch ươ ng trình xu t ra màn hình console chu i "Hello World" ấ ỗ

Trang 10

Chương trình đầu tiên:

public static void main (String[] args) {

// TODO code application logic here String s = new String("Hello World");

System.out.println(s);

}

– M t ch ộ ươ ng trình JAVA ph i có 1 hàm main Hàm main là đi m b t đ u c a ch ả ể ắ ầ ủ ươ ng trình (Entry Point)

Trang 11

Chương trình đầu tiên

• C u hình Entry Point cho ch ấ ươ ng trình:

– Ch n project � Properties� Run � Main Class: s ọ s

Trang 12

Chương trình đầu tiên

Trang 13

Chương trình đầu tiên

• Biên d ch và th c thi mã ngu n JAVA t dòng l nh: ị ự ồ ừ ệ

– Hai l nh c b n: ệ ơ ả

javac : Biên d ch các t p tin *.java thành t p tin th c thi *.classị ậ ậ ự

java: Ch y chạ ương trình t các t p tin sau khi biên d chừ ậ ị– Sau khi cài JDK, ki m tra các l nh java, javac đã s n sàng hay ch a?: ể ệ ẳ ư

Lỗi

Trang 14

Chương trình đầu tiên

• Biên d ch và th c thi mã ngu n JAVA t dòng l nh: ị ự ồ ừ ệ

– N u ch a: ế ư

• 1 Tìm đường d n th m c đã cài đ t JDK/binẫ ư ụ ặ

• 2 Thay đ i bi n môi trổ ế ường PATH

– Control Panel � System � Advance System Setting � Enviroment Variables – B sung đ ổ ườ ng d n c a th m c cài đ t JDK/bin vào bi n PATH ẫ ủ ư ụ ặ ế

• 3 T t và m l i c a s command line và th c thi l i đ ki m tra.ắ ở ạ ử ổ ự ạ ể ể

Ví d : C:\Program Files (x86)\Java\jdk1.7.0_06\binụ

Trang 15

Chương trình đầu tiên

Trang 16

Chương trình đầu tiên

• Khi các l nh ệ java và javac đã s n sàng:

OK

OK

Trang 17

Chương trình đầu tiên

• Gi s project HelloWorld đ ả ử ở ườ ng d n: ẫ

C:\Users\TruongSon\Documents\NetBeansProjects\HelloWorld

Trang 18

Chương trình đầu tiên

• 1 Biên d ch l p HelloWorld.java, k t qu biên d ch đ ị ớ ế ả ị ượ c b vào trong th m c ỏ ư ụ classes

• 2 Th c thi l p HelloWorld n m trong package helloworld: ự ớ ằ

C:\Users\ \HelloWorld>javac -d "classes" "src/helloworld/HelloWorld.java"

C:\Users\ \HelloWorld>java -classpath "classes" helloworld.HelloWorld

Biên dịch và thực thi bằng command line

Trang 19

Chương trình đầu tiên

Biên dịch và thực thi bằng Netbeans

Trang 20

Kiểu dữ liệu và khai báo biến

Trang 21

Kiểu dữ liệu

• Chuy n đ i ki u d li u sang chu i: ể ổ ể ữ ệ ỗ

– String String valueOf ( Object obj)

– String String valueOf ( boolean b)

– String String valueOf ( char c)

– String String valueOf ( char [] data)

– String String valueOf ( char [] data, int offset, int count) – String String valueOf ( boolean b)

– String String valueOf ( int i)

– String String valueOf ( long l)

– String String valueOf ( float f)

– String String valueOf ( double d)

Trang 22

Kiểu dữ liệu

• Chuy n đ i ki u d li u sang ki u int / Integer , long/Long ể ổ ể ữ ệ ể

– Integer Integer valueOf (String str)

– Integer Integer valueOf (int i)

– int Integer valueOf (String str) intValue ()

– int i Integer parseInt (String str)

– Long Long valueOf (String str)

– Long Long valueOf (long l)

– long l = Long parseLong (String str)

– long i = Long valueOf (String str) longValue ()

(*) int, long: ki u d li u c s ể ữ ệ ơ ở

(**) Integer, Long : Ki u d li u L p h ể ữ ệ ớ ướ ng đ i t ố ượ ng

Trang 23

Kiểu dữ liệu

• Chuy n đ i ki u d li u sang ki u float/ Float, double/Double ể ổ ể ữ ệ ể

– Float Float valueOf (String str)

– Float Float valueOf (int i)

– float Float valueOf (String str) floatValue ()

– float Float parseFloat (String str)

– Double Double valueOf (String str)

– Double Double valueOf (double l)

– double Double valueOf (String str) doubleValue ()

– double Double parseDouble (String str)

(*) float, double: ki u d li u c s ể ữ ệ ơ ở

(**) Float, Double: Ki u d li u L p h ể ữ ệ ớ ướ ng đ i t ố ượ ng

Trang 24

• Chuy n đ i ki u d li u sang ki u ngày: ể ổ ể ữ ệ ể

Trang 29

Nhập & Xuất từ màn hình console

Trang 32

//Xu t theo cách thông th ấ ườ ng

System.out.println(mssv + "-" + hoVaTen + ":" + diem);

//Xu t s d ng đ nh d ng xu t ấ ử ụ ị ạ ấ

String str = String.format("%s - %s : %f", mssv, hoVaTen, diem); System.out.println(str);

Trang 33

Scanner scan = new Scanner (System.in);

String str = scan nextLine ();

Trang 36

} else if (diem>=8 && diem<9) {

System.out.println( "Gi i" o );

} else if (diem>=7 && diem <8) {

System.out.println( "Khá" );

} else if (diem>=5 && diem <7) {

System.out.println( "Trung binh" );

Trang 37

• Giá tr ị: char, byte, short, int

• Giá tr 1ị , giá tr 2 ị có cùng ki u d li u ể ữ ệ v i ớ giá tr ị

Trang 43

double Math abs (double d)

double Math sqrt (double d)

double Math min (double a, double b)

double Math max (double a, double b)

double Math exp (double e)

double Math round (double r)

double Math pow (double a, double b)

double Math random ()

double Math PI

double Math E

Trang 44

double a = 2.3;

double b = Math.pow (b, 3); //min – max

double c = 6;

double d = 9.2;

double min = Math.min (c, d); double max = Math.max (c, d);

Trang 45

Scanner scan = new Scanner(System.in); int nChucNang = -1;

Trang 47

int[] arr1; //Khai báo m ng ki u int ả ể

long[] arr2; //Khai báo m ng ki u longả ể

float[] arr3; //Khai báo m ng ki u floatả ể

double[] arr4; //Khai báo m ng ki u double ả ể

boolean[] arr5; //Khai báo m ng ki u ả ể

boolean

String[] arr6 ; //Khai báo m ng ki u string ả ể

Trang 48

int [] arr1 = new int [5]; //Khai báo va

c p phát m ng ki u int , a.length = 5 â ả ê

long [] arr2 = new long [5]; // Khai báo

va c p phát m ng ki u long , a.length = â ả ê

5

float [] arr3 = new float [7]; //Khai báo

va c p phát m ng ki u float, a.length = â ả ê

7

String [] arr6 = new String [6]; //Khai

báo va c p phát m ng ki u string, â ả ê

a.length = 6

Trang 51

Mảng một chiều

• (4) Xu t m ng ấ ả

– Cách 1: s d ng c u trúc l p foreach ử ụ ấ ặ

//tenBien l n l ầ ượ t là các ph n t bên trong m ng ầ ử ả

for (KieuDuLieu tenBien : tenMang){

Trang 52

Mảng một chiều

• (4) Xu t m ng ấ ả

– Cách 2: S d ng c u trúc l p ử ụ ấ ặ for đ xu t m ng ể ấ ả – Ví d : ụ

for (int i=0 ; i<a.length; i++){

System.out.println(a[i]);

}

Trang 53

int n = Integer.parseInt (scan nextLine ());

int [] a = new int [n]; //a.Length = n

for ( int i = 0; i < a.length; i++) {

System.out.print("a["+i+"]=");

a[i] =

Integer.parseInt (scan nextLine ()); }

Trang 54

//Xu t m ng dùng for ấ ả

for ( int i = 0; i < a.length; i++) {

System.out println (a[i]);

Trang 56

int min, temp;

for (i = 0; i < a.length - 1; i++) {

temp = a[i];

a[i] = a[min];

a[min] = temp;

}

Trang 60

int [][] arr1 = new int [3][5];

int soDong = a.length; //soDong = 3 int soCot = a[i].length; //soCot = 5 //Khai báo va c p phát m ng ki u long â ả ê long [][] arr2 = new long [5][6];

int soDong = a.length; //soDong = 5 int soCot = a[i].length;; //soCot = 6 //Khai báo va c p phát m ng hai chi u â ả ê

ki u float ê

float [][] arr3 = new float [7][9];

int soCot = a.length; //soDong = 7 int soCot = a[i].length; //soCot = 9

Trang 61

int soDong = a.length; //soDong = 4 int soCot = a[i].length; //soCot = 2 //Cách 2

int [][] a = new int [4][2];

int soDong = a.length; //soDong = 4 int soCot = a[0].length; //soCot = 2 int k = 1;

for ( int i = 0; i < soDong; i++) {

for ( int j = 0; j < soCot; j++) {

a[i][j]=k++;

}

}

Trang 62

for ( int i = 0; i < a.length; i++){

for ( int j = 0; j < a[i].length; j++){

Trang 63

for ( int i = 0; i < a.length; i++){

for ( int j = 0; j < a[i].length; j++) {

Trang 64

for ( int i = 0; i < a.length; i++){

for ( int j = 0; j < a[i].length; j++){

s = s + a[i][j];

}

}

System.out.println ( "s=" + s);

Trang 65

Phát triển UD CSDL 2

Lập trình hướng đối tượng với JAVA

Trang 66

LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG

• Khai báo l p đ i t ớ ố ượ ng

• Khai báo thu c tính ộ

• Đ nh nghia các ph ị ươ ng th c kh i t o ứ ở ạ

• Đ nh nghia các ph ị ươ ng th c get/set ứ

• Đ nh nghia các ph ị ươ ng th c nh p xu t console ứ ậ ấ

• Đ nh nghia các ph ị ươ ng th c x lý nghi p v ứ ử ệ ụ

• Đ nh nghia các ph ị ươ ng th c overload ứ

• Đ nh nghia các ph ị ươ ng th c m c l p (static) ứ ứ ớ

Trang 67

Khai báo lớp đối tượng

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

package bt1;

public class PhanSo {

//Khai báo các thu c tính ọ //Khai báo các ph uo ng th c ư //Các ph uo ng th c kh i t o ư ơ a //Các ph uo ng th c get/set ư //Các ph uo ng th c nh p xu t ư ạ â console

//Các ph uo ng th c x lý ư ử nghi p v ẹ ụ

//Các ph uo ng th c overload ư //Các ph uo ng th c static ư

public class TenLop {

//Khai báo các thu c tinh ộ //Khai báo các ph ươ ng th c ứ

//Các ph uo ng th c kh i t o ư ơ a //Các ph uo ng th c get/set ư //Các ph uo ng th c nh p ư ạ

xu t console â //Các ph uo ng th c x lý ư ử nghi p v ẹ ụ

//Các ph uo ng th c overload ư //Các ph uo ng th c static ư

}

Trang 68

Khai báo thuộc tính

1 2 3 4 5 6 7 8 9 10

package bt1;

public class PhanSo {

//Khai báo các thu c tính ọ private int tuSo;

private int mauSo;

//Khai báo các ph uo ng th c ư

public class TenLop {

//Khai báo các thu c tính ọ private KieuDuLieu tenTT1;

… private KieuDuLieu tenTTN;

//Khai báo các ph uo ng th c ư

}

Trang 69

Khai báo thuộc tính

1 2 3 4 5 6 7

package bt1;

public class MangPhanSo {

//Khai báo các thu c tính ọ private PhanSo [ ] arr;

//Khai báo các ph uo ng th c ư

public class MangSoNguyen {

//Khai báo các thu c tính ọ private int [ ] arr;

//Khai báo các ph uo ng th c ư

}

Trang 70

Định nghĩa phương thức khởi tạo

public class TenLop{

//Khai báo các thu c tính ọ

private KieuDuLieu thuocTinh1;

private KieuDuLieu thuocTinhN;

//Ph uo ng th c kh i t o đ y đ ư ơ a â u

tham sô

public TenLop ( KieuDuLieu

thuocTinh1, , KieuDuLieu thuocTinhN)

{

this thuocTinh1=thuocTinh1;

Trang 71

Định nghĩa phương thức khởi tạo

public class PhanSo{

//Khai báo các thu c tính ọ

private int tuSo;

private int mauSo;

public TenLop ( int tuSo, int mauSo){

this tuSo = tuSo;

this mauSo = mauSo;

}

//Ph uo ng th c kh i t o sao chep ư ơ a

public TenLop ( PhanSo ps){

this tuSo = ps.tuSo;

this mauSo = ps.mauSo;

}

}

Trang 72

Định nghĩa phương thức khởi tạo

Trang 73

Định nghĩa phương thức khởi tạo

public class MangPhanSo {

private PhanSo [] arr; //Khai báo

//Ph uo ng th c kh i t o sao chep ư ơ a

public MangPhanSo ( MangPhanSo

mps) {

this.arr = new PhanSo[mps.arr.length];

for (int i = 0; i <

mps.arr.length; i++) {

this.arr[i] = new PhanSo(mps.arr[i]);

} }

}

Trang 74

Định nghĩa phương thức khởi tạo

public class Main {

public static void main ( String [] args)

MangPhanSo mps3 = new MangPhanSo (

n e w

P h a n S o

( 1 , 3 ) ,

n e w

P h a n S o

( 4 , 3 ) ,

n e w

P h a n S o

( 5 , 9 ) )

Trang 75

Định nghĩa phương thức khởi tạo

public class MangSoNguyen {

//Khai báo thu c tính ọ

private int[] arr;

public MangSoNguyen (int [] arr) {

this.arr = new int[arr.length];

for (int i = 0; i < arr.length; i+

+){

this.arr[i] = arr[i];

} }

for (int i = 0; i <

msn.arr.length; i++) {

}

}

Trang 76

Định nghĩa phương thức khởi tạo

Trang 77

Định nghĩa các phương thức Get / Set

public class TenLop{

//Khai báo các thu c tính ọ

private KieuDuLieu thuocTinh1;

private KieuDuLieu thuocTinhN ;

}

}

Trang 78

Định nghĩa các phương thức Get / Set

public class PhanSo{

//Khai báo các thu c tính ọ

private int tuSo;

private int mauSo;

}

Trang 79

Định nghĩa các phương thức Get / Set

public class Main {

public static void main(String[]

args) {

PhanSo ps1= new PhanSo();

System.out.println(ps1.getT uSo() + "/" +

ps1.getMauSo());

ps1.setTuSo( 3 );

ps1.setMauSo( 4 );

System.out.println(ps1.getT uSo() + "/" +

ps1.getMauSo());

}

}

Trang 80

Định nghĩa các phương thức Get / Set

public class MangPhanSo {

//Khai báo thu c tính ọ

private PhanSo[] arr;

public void setArr(PhanSo arr) {

this arr = new

}

Trang 81

Định nghĩa các phương thức Get / Set

this arr[index]=valu e;

} }

public PhanSo get( int index) {

PhanSo ps = null ;

if (index >= 0 && index <

this arr.length) {

//ps=new PhanSo(this.arr[ind ex]);

Trang 82

Định nghĩa các phương thức Get / Set

PhanSo[] arr2 = new PhanSo[ 2 ];

arr2[ 0 ] = new PhanSo( 2 , 4 );

arr2[ 1 ] = new PhanSo( 3 , 7 );

mps.setArr(arr2);

index= 0 ;

mps.set(index, new PhanSo( 8 , 5 ));

}

Trang 83

Định nghĩa các phương thức Get / Set

public class MangSoNguyen {

//Khai báo thu c tính ọ

private int [] arr;

public void setArr( int [] arr) {

this arr = new int [arr.length];

for ( int i = 0 ; i < arr.length;

i++) {

this arr[i] = rr[i];

} }

}

Trang 84

Định nghĩa các phương thức Get / Set

public void set( int index, int value) {

if (index >= 0 && index <

this arr.length) {

this arr[index]=valu e;

} }

public Integer get( int index) {

Integer value = null ;

if (index >= 0 && index <

Trang 85

Định nghĩa các phương thức Get / Set

Trang 86

Định nghĩa các phương thức nhập xuất

public class PhanSo{

//Khai báo các thu c tính ọ

private int tuSo;

private int mauSo ;

System.out.print( "M u â

s :" ô );

this mauSo = Integer.parseInt(scan.nextL ine());

}

public void xuat(String tieuDe){

System.out.println(tieuDe);

String str=String.format( "%d/

%d" , this tuSo, this mauSo);

System.out.println(str);

}

}

Trang 87

Định nghĩa các phương thức nhập xuất

public class Main {

public static void main(String[]

args) {

PhanSo ps1= new PhanSo();

ps1.nhap( "Nh p phan s ạ ô 1" );

ps1.xuat( "Xu t phan s 1" â ô );

PhanSo ps2= new PhanSo();

ps2.nhap( "Nh p phan s ạ ô 2" );

ps2.xuat( "Xu t phan s 2" â ô );

}

}

Trang 88

Định nghĩa các phương thức nhập xuất

public class MangPhanSo {

//Khai báo thu c tính ọ

private PhanSo [] arr;

public void nhap(String tieuDe){

Scanner scan= new

this arr= new PhanSo[n];

for ( int i= 0 ; i< this arr.length; i++){

this arr[i] = new

PhanSo();

this arr[i].nhap( "Ph

an s th " ô ư +i);

} }

}

Trang 89

Định nghĩa các phương thức nhập xuất

this arr[i].xuat( "Pha

n s th " ô ư +i);

} }

Trang 90

Định nghĩa các phương thức nhập xuất

public class MangSoNguyen {

//Khai báo thu c tính ọ

private int [] arr;

public void nhap(String tieuDe){

Scanner scan= new

this arr= new int [n];

for ( int i= 0 ; i< this arr.length; i++){

System.out.print( "P

h n t th " â ử ư + i +

":" );

this arr[i]=Integer.p arseInt(scan.nextLi ne())

} }

}

Trang 91

Định nghĩa các phương thức nhập xuất

System.out.print( "P han s th " ô ư +i+ ":" );

System.out.println( t his arr[i]);

} }

Trang 92

Định nghĩa các phương thức xử lý nghiệp vụ

public class PhanSo{

//Khai báo các thu c tính ọ private

int tuSo;

private int mauSo ;

public PhanSo cong(PhanSo ps){

PhanSo kq= new PhanSo();

kq.tuSo= this tuSo*ps.mauSo + this mauSo*ps.tuSo;

kq.mauSo= this mauSo*ps.m auSo;

return kq;

}

}

Trang 93

Định nghĩa các phương thức xử lý nghiệp vụ

public class Main {

public static void main(String[]

args) {

PhanSo ps1= new PhanSo();

ps1.nhap( "Nh p phan s ạ ô 1" );

ps1.xuat( "Xu t phan s 1" â ô );

PhanSo ps2= new PhanSo();

ps2.nhap( "Nh p phan s ạ ô 2" );

ps2.xuat( "Xu t phan s 2" â ô );

Ngày đăng: 16/07/2020, 10:40

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w