{"version":"1.0","provider_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","provider_url":"https:\/\/fatihsoysal.com\/blog","author_name":"Fatih Soysal","author_url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/","title":"Java 8'de Primitif ve Sonsuz Stream'ler","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"4CXLANVLEd\"><a href=\"https:\/\/fatihsoysal.com\/blog\/java-8de-primitif-ve-sonsuz-streamler\/\">Java 8&#8217;de Primitif ve Sonsuz Stream&#8217;ler<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/fatihsoysal.com\/blog\/java-8de-primitif-ve-sonsuz-streamler\/embed\/#?secret=4CXLANVLEd\" width=\"600\" height=\"338\" title=\"&#8220;Java 8&#8217;de Primitif ve Sonsuz Stream&#8217;ler&#8221; &#8212; Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" data-secret=\"4CXLANVLEd\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n<\/script>\n","description":"Java 8 ile gelen Stream API, koleksiyonlar \u00fczerinde i\u015flem yapmay\u0131 b\u00fcy\u00fck \u00f6l\u00e7\u00fcde kolayla\u015ft\u0131rd\u0131. Ancak, standart Stream API'nin Object tabanl\u0131 olmas\u0131, primitif tipler (int, long, double) i\u00e7in performans sorunlar\u0131na yol a\u00e7abiliyordu. \u0130\u015fte bu noktada, primitif tipler i\u00e7in optimize edilmi\u015f IntStream, LongStream ve DoubleStream devreye giriyor. Bu primitif stream'ler, otomatik boxing\/unboxing i\u015flemlerinden ka\u00e7\u0131narak \u00f6nemli performans kazan\u0131mlar\u0131 sa\u011fl\u0131yor. Ayr\u0131ca, sonsuz stream'ler sayesinde sonsuza kadar devam eden veri ak\u0131\u015flar\u0131 olu\u015fturabiliyoruz. Bu makalede, her iki kavram\u0131 da ayr\u0131nt\u0131l\u0131 bir \u015fekilde ele alaca\u011f\u0131z."}