Perkenalan ke Java Programming Sawaluddin Introduction Course


Perkenalan ke Java Programming Sawaluddin Introduction Course Objectives Upon yang melengkapkan jalan, anda akan mengerti –Course Objectives Create, menyusun, dan Jawa yang dikelola memprogram – Primitive data mengetik – Java menguasai mengalir – Methods – Arrays (karena mengajar Jawa di dua semester, ini bisa menjadi akhir) – diorientasikan dengan Benda memprogram – Core Java kelas (berayun, kekecualian, internationalization, multithreading, multi-media, I/O, menciptakan jaringan kerja, Koleksi-Koleksi Jawa Kerangka) Tujuan Jalan, cont. You akan dapat kepada – Develop memprogram – Write program sederhana yang memakai macam data primitif, pernyataan kontrol, metode, dan pajangan-pajangan. – Create dan penggunaan metode – Develop GUI interface dan Java applets – Write menarik bagi memproyeksikan – Establish yayasan kukuh di Jawa konsep memprogram Konsep Programming di Keadaan Besar? What adalah Jawa? Menyusun di Keadaan Besar? What adalah Computers Used For? – Pengolahan Kata (i.e., mengetik beberapa dokumen dan pencetakan mereka) – Business
Yang dilibatkan dengan Komputer? System/Hardware Designers (orang bentuk itu komputer dan produk Manufacturers (orang yang sebetulnya membangun danberhubungan) Software Designers (orang bentuk itu lamaranmengumpulkan komputer) Programmers (orang yang menulisuntuk dipakai dengan komputer) program komputer untuk mencapai menjalankan lamaran, permainan dan bungkus perangkat halus lain). User (orang yang membeli dan memakai perangkat halus) – We sedang bermaksud memainkan bagian Pemrogram di jalan ini, walaupun kami juga akan mendesain program kami (perangkat halus) dan oleh karena itu kami juga akan menjadi Perancang Perangkat Halus. Kalau kami menguji program kami, kami akan berpura-pura bahwa kami adalah Pemakai. Pengujian adalah sebagian penting menyusun untuk menjamin bahwa Pemakai bahagia dengan perangkat halus yang tidak penuh Hama! Apa ialah program? A program secara tradisional diketahui sebagai – urutan perintah kaleng itu

Object Oriented Programming adalah apa? Object Oriented yang memprogram ialah – metode menyusun yang membolehkan seorang pemrogram membangun model masalah “dunia nyata yang” lebih” alami dalam komputer. – berdasarkan ciptaan benda yang sering melambangkan kesepadanan dunia nyata mereka, tetapi tidak selalu. For Example, menganggap skenario pemrograman dan usaha berikut menghasilkan beberapa benda yang mungkin dipakai di benda mengorientasikan program. Juga, mencoba memikirkan pelaksanaan yang mana mungkin diperlukan untuk bergaul dengan benda. Itu ialah, kami memerlukan informasi yang mana untuk tahu tentang benda dan bagaimana kami mendapat informasi? Contoh: Mesin Kasir Bank yang diotomatkan (KASIR OTOMATIS) Persoalan Penting Kalau memperkembangkan Perangkat Halus: There adalah beberapa persoalan penting kalau memperkembangkan perangkat halus komputer macam yang mana pun. Perangkat halus “baik” yang mana pun harus melekat sampai ukuran ini: C orrectness – meyakinkan bahwa

Jawa adalah apa? Characteristics of Java History  JAVA ialah: – A yang memprogram bahasa dari Minggu Mikro- Sistem. – Object-Oriented – Interpreted Java, 20 Mei, Oak  James Gosling dan Minggu Micro- Systems History HotJava – The terlebih dulu dimungkinkan dengan1995, Minggu World J2SE, J2ME, dan J2EE (tidak disebut JDK Evolutions Jawa Web browser di buku, tetapi bisa membicarakan di sini secara opsional) Java ialah diorientasikan Java sederhana Characteristics of Java Java sehat dan Java diterjemahkan  Java disebarkan dengan benda  Java mudah dibawa  Java ialah arsitektur-netral  Java aman kuat Java dinamik Java ialah multithreaded Java’s kinerja Java 2 SDK v 1,2 JDK 1,1 (1996)  JDK 1,02 (1995) JDK Versions Java 2 Java 2 SDK v 1,3 (a.k.a JDK 1,3, 2000) (a.k.a JDK 1,2, 1998) SDK v 1,4 (a.k.a JDK 1,4, 2002)

– J2EE bisa dipergunakan untuk memperkembangkan lamaran server-sampingan seperti Jawa servlets dan Java ServerPages. Java Micro Edition (J2ME). – J2ME bisa dipergunakan untuk memperkembangkan lamaran untuk alat yang bisa berpindah-pindah seperti ponsel. Ini mengalir menggunakan J2SE untuk memperkenalkan Jawa yang memprogram.  Borland JBuilder  Forte lewat matahari MicroSystems Java IDE Tools  IBM Visual Age for Java  WebGain Café Microsoft Visual J++ EtcJCreator, When yang memprogram di Jawa, anda biasanya akan memakai komponen menggolongkan anda kelas dari kelas Jawa perpustakaan berikut: kelas yang dibuat tersedia kepada anda oleh orangmembuat sendiri lain Most pelajaran-pelajaran yang anda buat akan memakai kelas lain dengan menciptakan dan memakai benda yang kepunyaan kelas itu. Using perpustakaan kelas Jawa setiap kali mungkin adalah gagasan baik sejak – kelas dengan cermat ditulis dan efisien.

Publik kelas Selamat Datang {gangguan udara umum kekosongan utama (Tali [] args) {System.out.println (Selamat Datang ke Jawa! On menguasai garis);}} Menciptakan dan menyusun Programs On menguasai garis – Jawa– javac file.java Executing Applications classname Example javac Welcome.java Jawa Selamat Datang Output:…  Comments Menyusun dan mengalirkan Anatomi Program Java Program  Classes  Blocks  Statements  Modifiers  Reserved kata Package The Komentar metode utama di Jawa, komentar didahului olehMethods dua bantingan (//) secara berjejer, atau tertutup di antara/* dan */di sesuatu atau garis lipat ganda. Waktu penyusun melihat//, itu mengabaikan sama sekali teks sesudah//di garis sama. Waktu itu melihat/*, memindai untuk berikutnya */dan mengabaikan teks yang mana pun di antara/* dan */. Package The detik garis di program (bungkus chapter1;) menetapkan nama bungkus, chapter1, untuk Sambutan kelas. Keahlian menyusun sumber

(;).
Blocks
Classes
The class is the essential Java construct. A class is a template or blueprint for objects. To program in Java, you must understand classes and be able to write and use them. The mystery of the class will continue to be unveiled throughout this book. For now, though, understand that a program is defined by using one or more classes.
Methods
What is System.out.println? It is a method: a collection of statements that performs a sequence of operations to display a message on the console. It can be used even without fully understanding the details of how it works. It is used by invoking a statement with a string argument. The string argument is enclosed within parentheses. In this case, the argument is “Welcome to Java!” You can call the same println method with a different argument to print a different message.
main Method
The main method provides the control of program flow. The Java interpreter executes the application by invoking the main method.

The main method looks like this:
public static void main(String[] args) {
// Statements;
}
Displaying Text in a Message Dialog Box
you can use the showMessageDialog method in the JOptionPane class. JOptionPane is one of the many predefined classes in the Java system, which can be reused rather than “reinventing the wheel.”
The showMessageDialog Method
JOptionPane.showMessageDialog(null, “Welcome to Java!”,”Example 1.2″, JOptionPane.INFORMATION_MESSAGE));

The exit Method
Use Exit to terminate the program and stop all threads.

NOTE: When your program starts, a thread is spawned to run the program. When the showMessageDialog is invoked, a separate thread is spawned to run this method. The thread is not terminated even you close the dialog box. To terminate the thread, you have to invoke the exit method.

ntroduce Programming dengan Example Identifiers , Variabel, dan Constants Primitive Data Types byte, pendek, int, panjang, mengapung, dobel, mengarangkan, boolean Expressions Operators, Prioritas, Associativity, Operand Evaluation Order: ++, –, *,/, %, +=, -=, *=,/=, %=, ^, &, |, +, -, mendapat Masukan dari Input Dialog Boxes Case Studies (Computing Mortgage, dan Perkomputeran berganti) Gaya dan Documentation Guidelines Syntax Errors, Runtime Errors, dan Logic Errors

public class Area {
public static void main(String[] args) {
double radius, area ;

// Compute the first area
radius = 1.0;
area = radius*radius*3.14159;
System.out.println(“The area is “ + area + ” for radius “+radius);

// Compute the second area
radius = 2.0;
area = radius*radius*3.14159;
System.out.println(“The area is “ + area + ” for radius “+radius);

}
}

Identifier adalah urutan peran yang terdiri atas surat, angka, menggaris-bawahi (), dan lambang dolar ($). Identifier harus mulai dengan surat, menggaris-bawahi (), atau lambang dolar ($). Tidak bisa mulai dengan angka. Identifier tidak bisa menjadi kata dipesan. (melihat Appendix A, “Java Keywords,” untuk daftar kata dipesan). Identifier tidak bisa benar, palsu, or
null. Identifier bisa panjang yang mana pun.

// Compute the first area
radius = 1.0;
area = radius*radius*3.14159;
System.out.println(“The area is “ + area + ” for radius “+radius);

// Compute the second area
radius = 2.0;
area = radius*radius*3.14159;
System.out.println(“The area is “ + area + ” for radius “+radius);

Declaring Variables

int x; // Declare x to be an
// integer variable;
double radius; // Declare radius to
// be a double variable;
char a; // Declare a to be a
// character variable;
Declaring and Initializing
in One Step

 int x = 1;
 double d = 1.4;
 float f = 1.4;
Is this statement correct?

 int x = 1;
 double d = 1.4;
 float f = 1.4;
Is this statement correct?
Declaring and Initializing
in One Step

SLIDE 2

Introduce Programming denganData primitif mengetik dan Operations Primitive Data Types –Example • Identifiers, Variabel, dan Constants byte, pendek, int, panjang, mengapung, dobel, mengarangkan, boolean Operators, Prioritas, Associativity, Operand EvaluationExpressions Order: ++, –, *,/, %, +=, -=, *=,/=, %=, ^, & Getting, |, +, -, Case Studies (Computing Mortgage, danInput dari Input Dialog Boxes Syntax Style dan Documentation Guidelines Perkomputeran berganti) Errors, Runtime Errors, dan Logic Errors Introducing Programming dengan Contoh Contoh 2,1 memperhitungkan Bidang Circle This program memperhitungkan bidang lingkaran. A identifier adalah urutan peran yang terdiri atas surat,Identifiers angka, menggaris-bawahi (), dan lambang dolar ($). A identifier harus mulai dengan surat, menggaris-bawahi (), atau lambang dolar ($). Tidak bisa mulai dengan angka. A identifier tidak bisa dipesan

Variables //memperhitungkan yang pertama area radius = 1.0; bidang = radius*radius*3.14159; System.out.println (bidang adalah “ + bidang +”untuk radius +radius) ; ” //Menghitung detik area radius = 2.0; bidang = radius*radius*3.14159; System.out.println (bidang adalah “ + bidang +”untuk radius +radius) ; Declaring Variables int x;//Menyatakan x untuk menjadi an //bilangan bulat variable; ganda radius;//Menyatakan radius to //adalah seorang pengganti variable; mengarangkan;//Menyatakan untuk menjadi a //watak variable; Assignment Statements x = 1;//memberi 1 orangnya ke x; radius = 1,0;//memberi 1,0 ke radius; = ‘A’;//Assign ‘A’ ke a; ” Menyatakan dan Initializing di Satu Step int x = 1; ganda D = 1.4; mengapung f = 1.4; Is pernyataan ini benar? Constants terakhir datatype CONSTANTNAME = VALUE; Terakhir ganda PI = 3,14159;

Terakhir int SIZE = 3; Data yang Menurut Angka mengetik byte 8 bit pendek 16 bit int 32 bit panjang 64 bit mengapungkan 32 kekang dobel 64 bit Operators +, -, *,/, dan % 5/2 menyerahkan bilangan bulat 2. 5.0/2 menyerahkan nilai ganda 2,5 5 % 2 hasil 1 (sisa pembagian) memperhatikan Perhitungan yang memerlukan nomor titik mengapung ialah approximated karena nomor ini tidak disimpan dengan ketepatan benar-benar. Misalnya, System.out.println (1 – 0,1 – 0,1 – 0,1 – 0,1 – 0,1); mendasar 0,5000000000000001, tak ada 0,5, dan System.out.println (1,0 – 0,9); mendasar 0,09999999999999998, tak ada 0,1. Bilangan bulat disimpan secara persis. Oleh karena itu, perhitungan dengan bilangan bulat menghasilkan hasil bilangan bulat tepat. Number Literals A harfiah adalah nilai terus-menerus yang muncul secara langsung di program. Misalnya, 34, 1.000.000, dan 5,0 ialah literals di pernyataan berikut: Int saya = 34; panjang L = 1000000; ganda D = 5,0; Bilangan Bulat Literals bilangan bulat harfiah

Memegang. Misalnya, pernyataan byte B = 1000 akan menyebabkan kesalahan himpunan, karena 1000 tidak bisa disimpan di variabel byte macam. Bilangan bulat harfiah diasumsikan untuk menjadi int macam, yang nilainya di antara -231 (-2147483648) ke 231–1 (2147483647). Untuk menunjukkan bilangan bulat harfiah macam panjang, melampirkannya dengan surat L atau l. L lebih disukai karena l (lowercase L) dengan mudah bisa dikelirukan dengan (angka sesuatu). Titik mengapung Literals titik Mengapung literals ditulis dengan titik desimal. Dengan kelalaian, titik mengapung harfiah dianggap sebagai nilai macam ganda. Misalnya, 5,0 dianggap sebagai nilai ganda, tak ada nilai pengapung. Anda bisa membuatkan sejumlah pengapung dengan melampirkan surat f atau F, dan menjadikan sejumlah seorang pengganti dengan melampirkan surat D atau D. For Example, anda bisa menggunakan 100.2f atau 100.2F untuk pengapung

Int x = K;//(Wrong) panjang K = x;//(fine,implicit melemparkan) Type byte Pengecoran pendek  int  panjang  mengapung  ganda Casting Macam, cont. Pengecoran tersirat ganda D = 3; (pelebaran macam) Pengecoran gamblang int saya = (int) 3,0; (macam membatasi) Apa salah? Int x = 5/2.0; Data Peran Macam mengarangkan surat = ‘A’; (ASCII) mengarangkan numChar = ‘4’; (ASCII) mengarangkan surat = ‘\u0041’; (Unicode) mengarangkan numChar = ‘\u0034′; (Unicode) Peran istimewa mengarangkan rekening = ‘\t’; Unicode Format Appendix B: ASCII Character Set ASCII Character Set, cont. Melemparkan di antara mengarangkan dan Macam Numerik boolean Macam dan Operators boolean lightsOn = sebenarnya; boolean lightsOn = palsu; boolean B = (1 > 2);  && (dan) (1 < x) & & (x 1) & (x++ x) & & (1 > x++) Bagaimana (1 == x) | (10 > x++)? (1 == x) || (10 > x++)? Prioritas operator Bagaimana Caranya Untuk menilai 3 + 4 * 4 >  var++, var — 5 * (4 + 3) – ++i Operator Precedence ! (macam) Casting +, – (Unary tambah dan minus), ++var, — var +, – (Binary *,/, % (Perkalian, pembagian, dan modulus) (tidak) tambahan dan pengurangan) <, , > = (Perbandingan) ==, !=; (Kesetaraan) & | ^ (Exclusive OR) (Unconditional AND) (Unconditional OR) && (Conditional AND) Short-circuit AND =, +=, -=, *=,/=, %= (Tugas|| (Conditional OR) Short-circuit OR operator)

Operand Evaluation Order The prioritas dan associativity peraturan menetapkan perintah operator, tetapi tidak menetapkan perintah di yang operands seorang operator biner dinilai. Operands dinilai dari diwariskan pada sebelah kanan di Jawa. Yang sebelah kiri operand seorang operator biner dinilai di muka bagian yang sebelah kanan yang mana pun operand dinilai. Operand Evaluation Order, cont. Jika bukan operands mempunyai akibat sampingan yang mengubah nilai variabel, perintah operand evaluasi tidak relevan. Menarik bagi kasus bangun waktu operands mempunyai akibat sampingan. Misalnya, x menjadi 1 di kode berikut, karena dinilai ke 0 terlebih dahulu ++a dinilai ke 1. Int = 0; int x = + (++a); Tetapi x menjadi 2 di kode berikut, karena ++a dinilai ke 1, lalu dinilai ke 1. Int = 0; int x = ++a +

Ganda doubleValue =Double.parseDouble (doubleString); Di mana doubleString adalah sehelai tali numerik seperti “123.45”. Contoh 2,2 memasuki Masukan dari Dialog Boxes Example 2,3 Hipotek Menghitung Contoh 2,4 Perkomputeran berganti Programming Style dan Proper Naming Conventions  Appropriate Comments Documentation Block Styles Appropriate CommentsIndentation dan Jarak melapisi Include ringkasan di awal program untuk menerangkan apa yang dilakukan oleh program, kuncinya tampil, struktur data pendukungnya, dan teknik unik yang mana pun itu menggunakan. Masukkan nama anda, kelas bagian, perintah, tanggal, dan deskripsi ringkas di awal program. Choose nama berarti dan deskriptif.Menyebutkan Conventions Variables dan nama metode: – Use lowercase. Jika nama terdiri atas beberapa kata, merangkaikan semua di sesuatu, menggunakan lowercase untuk kata pertama, dan capitalize surat pertama masing-masing kata berikut di nama. Misalnya, radius variabel dan bidang, dan metode computeArea. Menyebutkan Rapat,

Constants: – Capitalize semua surat di konstan. Misalnya, terus-menerus PI. Proper Indentation dan Spacing Indentation – Indent dua tempat. Spacing – Use tempat kosong garis untuk memisahkan bagian-bagian kode. Rintangi Styles Use akhir–garis gaya untuk penyangga. Runtime Syntax Errors – Detected oleh penyusun Memprogram Errors Logic Errors – ProducesErrors – Causes program untuk memperhentikan Kesalahan Himpunan hasil salah publik kelas ShowSyntaxErrors {gangguan udara umum kekosongan utama (Tali [] args) {saya = 30; System.out.println (i+4);}} Runtime Errors publik kelas ShowRuntimeErrors {gangguan udara umum kekosongan utama (Tali [] args) {int saya = 1/0;}} Kesalahan Logika publik kelas ShowLogicErrors {//Memutuskan jika sejumlah yang di antara 1 dan 100 gangguan udara yang umum secara inklusif kekosongan utama (Tali [] args) {//Cepat pemakai untuk memasuki sejumlah Tali masukan = JOptionPane.showInputDialog (null, “Silahkan masuk bilangan bulat :”, ShowLogicErrors”, JOptionPane.QUESTION MESSAGE); int jumlah = Integer.parseInt (masukan); number 0) && (i = 0);
{
area = radius*radius*PI;
System.out.println(
“The area for the circle of radius ” +
radius + ” is ” + area);
}
This mistake is hard to find, because it is not a compilation error or a runtime error, it is a logic error.
This error often occurs when you use the next-line block style.
The if…else Statement
if (booleanExpression) {
statement(s)-for-the-true-case;
}
else {
statement(s)-for-the-false-case;
}

if…else Example
if (radius >= 0) {
area = radius*radius*PI;

System.out.println(“The area for the “
+ “circle of radius ” + radius +
” is ” + area);
}
else {
System.out.println(“Negative input”);
}
Multiple Alternative if Statements
if (score >= 90)
grade = ‘A’;
else
if (score >= 80)
grade = ‘B’;
else
if (score >= 70)
grade = ‘C’;
else
if (score >= 60)
grade = ‘D’;
else
grade = ‘F’;
Note
The else clause matches the most recent if clause in the same block. For example, the following statement
int i = 1; int j = 2; int k = 3;
if (i > j)
if (i > k)
System.out.println(“A”);
else
System.out.println(“B”);
is equivalent to
int i = 1; int j = 2; int k = 3;
if (i > j)
if (i > k)
System.out.println(“A”);
else
System.out.println(“B”);
Note, cont.
Nothing is printed from the preceding statement. To force the else clause to match the first if clause, you must add a pair of braces:
int i = 1;
int j = 2;
int k = 3;
if (i > j) {
if (i > k)
System.out.println(“A”);
}
else
System.out.println(“B”);
This statement prints B.
Nested if Statements
Example 3.1 Using Nested if Statements
This program reads in number of years and loan amount and computes the monthly payment and total payment. The interest rate is determined by number of years.

switch Statements
switch (year) {
case 7: annualInterestRate = 7.25;
break;
case 15: annualInterestRate = 8.50;
break;
case 30: annualInterestRate = 9.0;
break;
default: System.out.println(
“Wrong number of years, enter 7, 15, or 30”);
}

Beralih Peraturan Pernyataan perubahan Grafik Aliran Pernyataan perubahan-ucapan harus menyerahkan nilai mengarangkan, byte, pendek, atau int macam dan selalu harus dilingkungi di tanda kurung. Value1,…, dan valueN harus mempunyai macam data sama sebagai nilai perubahan-ucapan. Pernyataan menghasilkan di pernyataan kasus dilaksanakan waktu nilai di pertandingan pernyataan kasus nilai perubahan-ucapan. (pernyataan kasus dilaksanakan di urutan bertahap. ) Keyword pecah suka rela, tetapi sebaiknya dipergunakan di akhir masing-masing kasus untuk mengakhiri sisa pernyataan perubahan. Jika pernyataan patah tulang tidak hadir, pernyataan kasus berikutnya akan dilaksanakan. Beralih Peraturan Pernyataan, cont. Kasus kelalaian, yang suka rela, bisa dipergunakan untuk melakukan tindakan waktu tak satu kasus yang ditetapkan pun benar. Perintah kasus (memasukkan kasus kelalaian) tidak berarti.
is equivalent to

y = (x > 0) ? 1 : -1;

Ternary operator
Binary operator
Unary operator
Conditional Operator
if (num % 2 == 0)
System.out.println(num + “is even”);
else
System.out.println(num + “is odd”);

System.out.println(
(num % 2 == 0)? num + “is even” :
num + “is odd”);

Conditional Operator, cont.
(booleanExp) ? exp1 : exp2

Repetitions
while Loop Flow Chart
while Loop Flow Chart, cont.
Example 3.2: Using while Loops

TestWhile.java
Caution
Don’t use floating-point values for equality checking in a loop control. Since floating-point values are approximations, using them could result in imprecise counter values and inaccurate results. This example uses int value for data. If a floating-point type value is used for data, (data != 0) may be true even though data is 0.

// data should be zero
double data = Math.pow(Math.sqrt(2), 2) – 2;

if (data == 0)
System.out.println(“data is zero”);
else
System.out.println(“data is not zero”);
do-while Loop
for Loops
for (initial-action; loop-continuation-condition; action-after-each-iteration) {
//loop body;
}

int i = 0;
while (i < 100) {
System.out.println(“Welcome to Java! ” + i);
i++;
}
Example:
int i;
for (i = 0; i < 100; i++) {
System.out.println(“Welcome to Java! ” + i);
}
for Loop Flow Chart
for Loop Example
for Loop Examples
Which Loop to Use?
Caution
Adding a semicolon at the end of the for clause before the loop body is a common mistake, as shown below:

for (int i=0; i<10; i++);
{
System.out.println(“i is ” + i);
}
Caution, cont.
Similarly, the following loop is also wrong:
int i=0;
while (i<10);
{
System.out.println(“i is ” + i);
i++;
}
In the case of the do loop, the following semicolon is needed to end the loop.
int i=0;
do {
System.out.println(“i is ” + i);
i++;
} while (i num2)
return num1;
else
return num2;
}
Calling Methods
public class MaxBilangan {
pubic static int max(int num1, int num2) {
if (num1 > num2)
return num1;
else
return num2;
}
public static void main(String args[]) {
int i = 5, j = 2 ;
int k =max(i,j) ;

System.out.println(“The maximum “ + i + “ and “ + j
“ is “ + k ) ;
}
}

Calling Methods, cont.
Calling Methods, cont.
CAUTION
A return statement is required for a nonvoid method. The following method is logically correct, but it has a compilation error, because the Java compiler thinks it possible that this method does not return any value.
public static int xMethod(int n) {
if (n > 0) return 1;
else if (n == 0) return 0;
else if (n < 0) return –1;
}
To fix this problem, delete if (n<0) in the code.
Passing Parameters
public static void nPrintln(String message, int n) {
for (int i = 0; i num2)
return num1;
else
return num2;
}

Ambiguous Invocation
Sometimes there may be two or more possible matches for an invocation of a method, but the compiler cannot determine the most specific match. This is referred to as ambiguous invocation. Ambiguous invocation is a compilation error.
Ambiguous Invocation
public class AmbiguousOverloading {
public static void main(String[] args) {
System.out.println(max(1, 2));
}
public static double max(int num1, double num2) {
if (num1 > num2)
return num1;
else
return num2;
}
public static double max(double num1, int num2) {
if (num1 > num2)
return num1;
else
return num2;
}
}

min, max, abs, and random
 max(a, b)and min(a, b)
Returns the maximum or minimum of two parameters.
 abs(a)
Returns the absolute value of the parameter.
 random()
Returns a random double value
in the range [0.0, 1.0).
Example 4.4 Computing Mean and Standard Deviation
Generate 10 random numbers and compute the mean and standard deviation
Example 4.5 Obtaining Random Characters
Write the methods for generating random characters. The program uses these methods to generate 175 random characters between ‘!’ and ‘~’ and displays 25 characters per line. To find out the characters between ‘!’ and ‘~’, see Appendix B, “The ASCII Character Set.”
Example 4.5 Obtaining Random Characters, cont.
Case Studies
Example 4.6 Displaying Calendars

The program reads in the month and year and displays the calendar for a given month of the year.
Design Diagram

Recursion (Optional)
Example 4.7 Computing Factorial

factorial(0) = 1;
factorial(n) = n*factorial(n-1);

Example 4.7 Computing Factorial, cont.
Example 4.7 Computing Factorial, cont.
Fibonacci Numbers
Example 4.8 Computing Finonacci Numbers
0 1 1 2 3 5 8 13 21 34 55 89…
f0 f1
fib(2) = fib(0) + fib(1);
Fibonacci Numbers, cont
Fibonnaci Numbers, cont.
Towers of Hanoi
Example 4.9 Solving the Towers of Hanoi Problem

Solve the towers of Hanoi problem.
Towers of Hanoi, cont.

CAUTION Using notasi steno, anda mempunyai untuk menyatakan, menciptakan, dan initialize aneka-ragam semua di satu pernyataan. Membelahnya akan menyebabkan kesalahan sintaksis. Misalnya, pengikut-pengikut ialah wrong: ganda [] myList; myList = {1,9, 2,9, 3,4, 3,5}; Example 5.1 Testing Arrays Objective: program menerima 6 nomor dari papan tuts, menemukan jumlah dan hitungan paling besar kejadian jumlah yang paling besar masuk dari papan tuts. Bagaimana anda memasuki 3, 5, 2, 5, 5, dan 5, jumlah yang paling besar adalah 5 dan hitungan kejadiannya adalah 4. Example 5.2 Assigning Grades Objective: membaca angka mahasiswa (int) dari papan tuts, mendapat angka terbaik, dan lalu memberi angka mendasarkan di mengikuti scheme:

– Grade jika kodi ialah > = best–10; – Grade ialah B jika kodi ialah > = best–20; – Grade ialah C jika kodi ialah > = best–30; – Grade ialah D jika kodi ialah > = best–40; – Grade ialah F lain. Memberikan Pajangan-Pajangan kepada Methods Java penggunaan lewat nilai untuk memberikan parameter sampai metode. Ada perbedaan penting di antara memberikan nilai variabel macam data primitif dan memberikan pajangan-pajangan. For parameter nilai macam primitif, nilai sebenarnya diberikan. Mengubah nilai parameter lokal di dalam metode tidak mempengaruhi nilai variabel di luar metode. For parameter macam pajangan, nilai parameter berisi referensi sampai pajangan; surat keterangan ini diberikan sampai metode. Ganti yang mana pun sampai aneka-ragam yang terjadi di dalam badan metode akan mempengaruhi aneka-ragam asli bahwa

Example 5.5
Counting Occurrence of Each Letter
 Generate 100 lowercase letters randomly and assign to an array of characters.
 Count the occurrence of each letter in the array.
 Find the mean and standard deviation of the counts.
Example 5.6
Copying Arrays
In this example, you will see that a simple assignment cannot copy arrays in the following program. The program simply creates two arrays and attempts to copy one to the other, using an assignment statement.
Copying Arrays
Copying Arrays
Using a loop:
int[] sourceArray = {2, 3, 1, 5, 10};
int[] targetArray = new int[sourceArray.length];

for (int i = 0; i < sourceArrays.length; i++)
targetArray[i] = sourceArray[i];

The arraycopy Utility
arraycopy(sourceArray, src_pos, targetArray, tar_pos, length);

Example:
System.arraycopy(sourceArray, 0, targetArray, 0, sourceArray.length);
Multidimensional Arrays
Declaring Variables of Multidimensional Arrays and Creating Multidimensional Arrays

int[][] matrix = new int[10][10];
or
int matrix[][] = new int[10][10];
matrix[0][0] = 3;

for (int i=0; i<matrix.length; i++)
for (int j=0; j 2, 6, 5, 4, 8, 1, 9 (size = 7)
2, 6, 5, 4, 8, 1 => 2, 6, 5, 4, 1, 8 (size = 6)
2, 6, 5, 4, 1 => 2, 1, 5, 4, 6 (size = 5)
2, 1, 5, 4 => 2, 1, 4, 5
2, 1, 4 => 2, 1, 4,
2, 1 => 1, 2
Sort it to produce 1, 2, 4, 5, 6, 8, 9
Exercise 5.5: Bubble Sort
int[] myList = {2, 9, 5, 4, 8, 1, 6}; // Unsorted

Pass 1: 2, 5, 4, 8, 1, 6, 9
Pass 2: 2, 4, 5, 1, 6, 8, 9
Pass 3: 2, 4, 1, 5, 6, 8, 9
Pass 4: 2, 1, 4, 5, 6, 8, 9
Pass 5: 1, 2, 4, 5, 6, 8, 9
Pass 6: 1, 2, 4, 5, 6, 8, 9
carakan tanpa

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s