آرایه ها در جاوا
آرایه یک شی کانتینری میباشد که تعداد ثابتی از مقادیر یک نوع واحد
طراحی اپلیکیشن در مشهد را در خویش نگه میدارد.یک گزینه در یک آرایه عنصر نامیده میگردد.
هر عنصر از روش یک شاخص قابل دسترسی میباشد.
اولین عنصر در یک آرایه از روش شاخص 0 نشانی داده میشود، عنصر دوم از روش 1 و غیره.
package com.vogella.javaintro.array;
public class TestMain {
public static void main(String[] args) {
// declares an array of integers
int[] array;
// allocates memory for 10 integers
array = new int[10];
// initialize values
array[0] = 10;
// initialize second element
array[1] = 20;
array[2] = 30;
array[3] = 40;
array[4] = 50;
array[5] = 60;
array[6] = 70;
array[7] = 80;
array[8] = 90;
array[9] = 100;
}
}
رینگ برای آرایه ها
آرایه ها و گروه ها را می قدرت با یک رینگ for بی آلایش خیس پردازش کرد.
for(declaration : expression)
{
// body of code to be executed
}
نمونه
package com.vogella.javaintro.array;
public class TestMain {
public static void main(String[] args) {
// declares an array of integers
int[] array;
// allocates memory for 10 integers
array = new int[10];
// initialize values
array[0] = 10;
// initialize second element
array[1] = 20;
array[2] = 30;
array[3] = 40;
array[4] = 50;
array[5] = 60;
array[6] = 70;
array[7] = 80;
array[8] = 90;
array[9] = 100;
int idx = 0;
for (int i : array) {
System.out.println(\"Element at index \" + idx + \" :\" + i);
idx++;
}
}
}
فن ها در لهجه نرمافزار نویسی جاوا
کلاس String آرم دهنده فن های کاراکتر میباشد.
تک تک صحبت های فن ای، مثلا، “hello” تحت عنوان مثال هایی از این کلاس طراحی می گردند.
یک مثال از این کلاس یک شی میباشد.
فن ها تغییر و تحول ناپذیر می باشند، مثلا، انتساب یک مقدار تازه به یک شی فن، یک شی تازه ساخت و ساز می نماید.
برای به هم پیوستن فن ها از یک StringBuilder به کار گیری نمائید.
StringBuilder sb =new StringBuilder(\"Hello \");
sb.append(\"Eclipse\");
String s = sb.toString();
استریم ها در گویش اپ نویسی جاوا
یک استریم از بسته java.util.stream دنباله ای از موادسازنده از یک منبع میباشد که از عملیات انبوه جانبداری می نماید.
package com.vogella.java.streams;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.IntStream;
public class IntStreamExample {
public static void main(String[] args) {
// printout the numbers from 1 to 100
IntStream.range(1, 101).forEach(s -> System.out.println(s));
// create a list of integers for 1 to 100
List list = new ArrayList<>();
IntStream.range(1, 101).forEach(it -> list.add(it));
System.out.println(\"Size \" + list.size());
}
}
Optional
در صورتیکه متدی را فراخوانی نمائید یا این که به فیلدی روی یک شی دسترسی داشته باشید که مقدار دهی نخستین (null) وجود ندارد،
یک NullPointerException (NPE) اخذ خواهید کرد.
کلاس java.util.Optional میتواند برای اجتناب از این NPE ها استعمال شود.
java.util.Optional ابزار خیر برای نشانه دادن این میباشد که مقدار بازگشتی ممکن میباشد وجود نداشته باشد،
که میتواند مستقیماً در روال چشم گردد خیر اینکه تنها بیان خواهد شد که null ممکن میباشد در JavaDoc برگردانده خواهد شد.
در صورتی میخواهید متدی را روی یک شی Optional فراخوانی فرمائید و برخی از مشخصات را پژوهش نمائید،
میتوانید از طریق غربال به کارگیری فرمایید.
اسلوب غربال یک پاراگراف را تحت عنوان آرگومان میگیرد.
درصورتیکه پاره ای در شیء ازروی اراده وجود داشته باشد و با جمله منطبق داشته باشد، شیوه غربال آن مقدار را برمیگرداند.
در غیر این شکل، یک شیء از روی میل خالی را برمی گرداند.
شما میتوانید از روی اختیار را به نحوه های متفاوت تولید فرمائید:
// use this if the object is not null
opt = Optional.of(o);
// creates an empty Optional, if o is null
opt = Optional.ofNullable(o);
// create an empty Optional
opt = Optional.empty();
سیاق ifPresent میتواند برای اجرای برخی از کدها بر روی یک شی در شکل وجود آن استعمال شود.
فرض فرمائید یک شی Todo دارید و میخواهید مشی getId() را روی آن فراخوانی نمایید.
از روش کد پایین میتوانید این فعالیت را جاری ساختن دهید.
Todo todo = new Todo(-1);
Optional optTodo = Optional.of(todo);
// get the id of the todo or a default value
optTodo.ifPresent(t-> System.out.println(t.getId()));
از روش طرز نقشه میتوانید شی را در شکل وجود تغییر تحول صورت دهید و از روش طریق غربال میتوانید مقادیر خاصی را غربال فرمائید.
Todo todo = new Todo(-1);
Optional optTodo = Optional.of(todo);
// get the summary (trimmed) of todo if the id is higher than 0
Optional map = optTodo.filter(o -> o.getId() > 0).map(o -> o.getSummary().trim());
// same as above but print it out
optTodo.filter(o -> o.getId() > 0).map(o -> o.getSummary().trim()).ifPresent(System.out::println);
برای بدست آوردن مقدار حقیقی یک ازروی اراده می قدرت از مشی get() بهره برد.
ولی در صورتیکه که Optional خالی باشد، یک NoSuchElementException تولید می نماید.
برای خودداری از این NoSuchElementException می اقتدار از orElse یا این که orElseGet برای ارائه پیش فرض در شکل خلا به کار گرفت.
// using a String
String s = \"Hello\";
Optional maybeS = Optional.of(s);
// get length of the String or -1 as default
int len = maybeS.map(String::length).orElse(-1);
// orElseGet allows to construct an object / value with a Supplier
int calStringlen = maybeS.map(String::length).orElseGet(()-> \"Hello\".length());