1. returnPratelan

Apa sampeyan wis sinau kabeh babagan cara Jawa? Apa wae sing sampeyan pikir sampeyan ngerti, sampeyan isih ora ngerti setengah saka iku.

Ayo dadi miwiti karo soko prasaja. Contone, Jawa duwe statement bali sing ngidini sampeyan langsung mungkasi cara sing diarani. Punika statement:

return;

Prasaja: tembung tunggal returnditerusake kanthi titik koma. Sanalika program nglakokaké statement iki, cara saiki metu langsung, lan nelpon terus.

Yen returndiarani ing maincara, banjur maincara bakal langsung mungkasi, lan karo kabeh program.

Tuladha:

class Solution
{
   public static void fill(int[] data, int from, int to, int value)
   {


     if (from < 0 || to > data.length)
       return;

     for (int i = from; i < to; i++)
     {
       data[i] = value;
     }
   }

   public static void main(String[] args)
   {
     int[] months = {1, 2, 3, 4, 5, 6, 7, 8 ,9, 10, 11, 12};
     fill(months, 2, 10, 8);
   }
}


Cara fill ngisi bagean saka larik liwati karo value.
Bagean saka array sing bakal diisi ditemtokake dening indeks from lan to.
Yen from kurang saka 0utawa yen to luwih saka dawa array, banjur cara mungkasi langsung.

Program ing ndhuwur nduweni fillmetode sing ngisi array sing diterusake karo value. Ora ngisi kabeh array, mung bagean sing ditemtokake dening indeks fromlan to.

Ing wiwitan metode fill , nilai sing dilewati dicenthang kanggo mesthekake yen bener. Yen fromkurang saka 0, utawa yen to luwih gedhe tinimbang dawa array, fillcara kasebut langsung mandheg (nglakokake returnstatement).

Pratelan iki returnmigunani: meh saben metode ing Jawa duwe siji, lan iki sebabe.



2. Metode kanthi asil,void

Elinga yen kita tau ngerti yen ana pernyataan, lan ana ekspresi . Ekspresi, ora kaya statement, nduweni nilai sing bisa digunakake ing ngendi wae.

Lan, ing Jawa, cara bisa duwe nilai . Lan iki warta apik banget: cara ora mung bisa nindakake soko adhedhasar paramèter input, nanging uga, contone, kanggo ngevaluasi soko lan bali asil pitungan .

Miturut cara, sampeyan wis nemoni cara kasebut:

double delta = Math.abs(d1 - d2);
Cara abs()ngasilake dobel
Scanner console = new Scanner(System.in);
int x = console.nextInt();

Metode nextInt()ngasilake anint
String str = "Hello";
String s2 = str.toUpperCase();

Cara toUpperCase()ngasilake aString
int[] data = {1, 4, 5, 6, 7, 8, 11};
int[] array = Arrays.copyOf(data, 4);

Metode copyOf()ngasilake anint[]

Saben cara mung bisa ngasilake siji nilai saka siji jinis sing wis ditemtokake. Jinis bali ditemtokake nalika cara kasebut diumumake:

public static Type name(parameters)
{
  method body
}

Ing endi name jeneng metode kasebut, parameters yaiku dhaptar paramèter metode, lan type minangka jinis asil sing cara kasebut bali.

Kanggo cara sing ora ngasilake apa-apa, ana jinis placeholder khusus void:.

Apa sampeyan nulis metode sampeyan dhewe lan ora pengin mbalekake apa wae menyang metode panggilan? Mung wara-wara jinis cara minangka void, lan masalah wis ditanggulangi. Ana uga akeh cara kaya iki ing Jawa.


3. Ngasilake asil

Kita mung ngerti carane mratelakake cara sing ngasilake asil pitungan, nanging kepiye carane ngasilake metode kasebut?

Pernyataan kasebut returnmbantu kita metu ing kene maneh. Nglewati asil saka cara katon kaya iki:

return value;

Ing endi returnana statement sing mungkasi metode kasebut langsung. Lan value iku nilai sing cara bali menyang cara nelpon nalika metu. Jinis valuekudu cocog karo typesing ditemtokake ing deklarasi metode.

Conto 1. Cara ngetung minimal rong nomer:

int min(int a, int b)
{
   if (a < b)
     return a;
   else
     return b;
}
Cara ngasilake minimal rong nomer.

Yen a < b
bali Yen a
ora
balib

Conto 2. Cara kasebut duplikat string sing dilewati nkaping pindho:

String multiple(String str, int times)
{
   String result = "";
   for (int i = 0; i < times; i++)
     result = result + " "+ str;
   return result;
}
Cara kasebut njupuk rong paramèter - senar lan kaping pirang-pirang senar kasebut kudu diulang.
String kosong digawe kanggo asil mangsa ngarep.

Ing daur ulang kanthi timesiterasi, spasi lan strsenar ditambahake menyang resultsenar.

Senar kasebut resultbali minangka asil saka metode kasebut.

Conto 3: Cara ngetung maksimal rong nomer nggunakake operator ternary:

int max(int a, int b)
{
   return (a > b ? a : b);
}
Cara ngasilake maksimal rong nomer.

bali (yen a > b, banjur a, yen ora b)