PAYLAŞ

eğitim kaynağı;https://www.youtube.com/watch?v=QYvUmIYgsiA&index=7&list=PLB841C370FAFB8EC7

 

ArrayList<Integer> numbers = new ArrayList<>();

List<String> values = new ArrayList<>();

Screenshot from 2017-04-26 22-48-48 Screenshot from 2017-04-26 22-49-00————————————————– konu 2

Arraylist vs Linkedlist speed

List<Integer> arraylist = new ArrayList<>();
List<Integer> linkedlist = new LinkedList<>();

Screenshot from 2017-04-26 23-40-09

Screenshot from 2017-04-26 23-40-31

Screenshot from 2017-04-26 23-40-46—————————————————————-hash map

key : value

key : value

key : value

key : value

        HashMap<Integer, String> map = new HashMap<>();

 

//hashmap iterator
        for (Map.Entry<Integer, String> entry: map.entrySet()) {
            int key = entry.getKey();
            String value = entry.getValue();
            
            System.out.println(key + “: ” + value);

Screenshot from 2017-04-27 14-10-59Screenshot from 2017-04-27 14-12-43—————————————————————-HashMap,LinkedHashMap,TreeMap

 

 

    Map<Integer, String> haspmap = new HashMap<>();
    //key numarasına göre küçükten büyüğe sıralar
    Map<Integer, String> linkedhashmap = new LinkedHashMap<>();
    //eklenme sırasına göre  sıralar
    Map<Integer, String> treemap = new TreeMap<>();
    //key numarasına göre küçükten büyüğe sıralar

 

//ıterator
    
    for(Integer key: map.keySet()){
        String value = map.get(key);
        System.out.println(key+ “:”+value);}}}

 

Screenshot from 2017-04-27 15-06-58Screenshot from 2017-04-27 15-07-50—————————————————-HashSet,LinkedHashSet,Set(interface),isEmpty(boolean),add,hashCode(),ıteration,contains(boolean),retainAll,removeAll

Set<String> set1 = new HashSet<>();
//Set interface
//tüm kodlara erişmek için
//https://docs.oracle.com/javase/7/docs/api/java/util/Set.html
//Hashset does not retain order
//iteratere gerek yok
//rastgele bir sıralama yapar mantığı önemli değil

set1.add(“dog”);

if(set1.isEmpty()) {}

Set<String> set2 = new LinkedHashSet<>();
//LinkedHashset renembers the order you added items in
//iteratere gerek yok
//sırayle eklenişe göre yazdırır ilk eklenen ilk elementdir

 

///////////ıteration///////////yapar
for(String element: set2){
System.out.println(element);

}

 

////////hash code görmek için her bir elementin
for (String string : set2) {
System.out.println(string+”=”+string.hashCode());

 

intersection.retainAll(set3);
//retainAll sadece ikisindede ortak olalar kalır

 

difference.removeAll(set3); //set3  elementlerini çıkar demek

Screenshot from 2017-04-27 17-17-26Screenshot from 2017-04-27 17-17-50

Screenshot from 2017-04-27 17-18-08

————————————————-class sağ soruce generato tık hashcode and Map<Person,

/collection başka claslarla ilişki///

Person p1 = new Person(0,”bob”);    

Map<Person, Integer> map2 = new LinkedHashMap<>();
//map.put(key, value);

map2.put(p1, 1);

///////////iteration///////////

for (Person key : map2.keySet()) {
    System.out.println(key +”: “+map2.get(key));
}

//////LinkedHashSet // başka classlarlailişki

Set<Person> set2 = new LinkedHashSet<>();

set2.add(p1);

 

class sağ soruce generato tık hashcode     //////hashcode////

 

hash code öncesi

Screenshot from 2017-04-27 17-58-18

hash code sonrası

sıralama keydeki numaraya göre yapılır

Screenshot from 2017-04-27 18-07-25

örnek 2

Screenshot from 2017-04-27 18-15-44code source

Screenshot from 2017-04-27 21-05-54Screenshot from 2017-04-27 21-07-49

Screenshot from 2017-04-27 21-08-38 Screenshot from 2017-04-27 21-08-53

——————————————————-arraylist,list, Collections.sort(object); , implements Comparator, new Comparator<Integer>,shorting arbitary objects,toLowerCase,naşka class ile kullanımı Comparator

Collections.sort(object);     alfabeye göre sıralama yapar eğer String  ise 

Collections.sort(object);     numarata göre sıralama yapar eğer object Integer ise

 

herhangi bir sınıfa implements Comparator eklediğinde aşşağıdakiler orrivide edilmek zorunda

class StringLengthComparatorrrr implements Comparator<String>{

    @Override
    public int compare(String o1, String o2) {
        // TODO Auto-generated method stub
        return 0;
    }
    
}

 

Comparator methodu oluşturmadan direk Comparator yapma

not toLowerCase kullanmasaydık büyük harf en üstte yer alırdı

Collections.sort(people, new Comparator<Person2>() {

            @Override
            public int compare(Person2 p1, Person2 p2) {
                
            return p1.getName().toLowerCase().compareTo(p2.getName().toLowerCase());
            }}
        );

Screenshot from 2017-04-27 23-17-43Screenshot from 2017-04-27 23-18-08Screenshot from 2017-04-27 23-18-49Screenshot from 2017-04-27 23-19-15Screenshot from 2017-04-27 23-19-56Screenshot from 2017-04-27 23-20-12Screenshot from 2017-04-27 23-22-18

Screenshot from 2017-04-27 23-22-30

—————————————-Collections.sort(list),Collections.sort(object)SortedSet,TreeSet,diğerclassileilişki

List<String> list = new ArrayList<>();
SortedSet<String> set =new TreeSet<>();
//otomatik alfabetik sıralar

 

Collections.sort(list);//alfabetic sıralar

diğerclassileilişki

List<Person3> list2 = new ArrayList<>();
SortedSet<Person3> set2 =new TreeSet<>();

example method

private static void addElementsforclass(Collection<Person3> col){
    col.add(new Person3(“joe”));

Collections.sort(objectfromotherclass);//alfabetic sıralar ama error verir error düzeltmek için

Screenshot from 2017-04-28 12-30-01

its fixed

only add implements Comparable<Person3>

class Person3 implements Comparable<Person3> {
    private String name;
    
    public Person3(String name){
        this.name=name;
    }
    public String toString(){
        return name;
    }
    @Override
    public int compareTo(Person3 arg0) {
        // TODO Auto-generated method stub
        return 0;
    }
}

Screenshot from 2017-04-28 12-38-32Screenshot from 2017-04-28 12-39-04

hashcode ne işe yarar?

Screenshot from 2017-04-28 12-46-38hash code var ve çıktı

Screenshot from 2017-04-28 12-48-13compereTo  alfebetic sıralama tersten

    public int compareTo(Person3 person3) {
        return -name.compareTo(person3.name);// – reverse yapmaya yarar
    }

çıktı

Screenshot from 2017-04-28 12-52-57compareTo uzunluğa göre sıralma

    @Override
    public int compareTo(Person3 person3) {
        //return -name.compareTo(person3.name);// – reverse alfabetic yapmaya yarar
        int len1 = name.length();
        int len2 = person3.name.length();
        if(len1>len2){
        return 1;
        }else if (len1<len2){
            return-1;
        }else {
            return 0;
        }
    }

çıktı

Screenshot from 2017-04-28 13-04-23inceleme dikkat sue ortadan kayboldu bunun için yapamız geereken

return 0 ; değiştirmek

return name.compareTo(person3.name);

yeni çıktı;

Screenshot from 2017-04-28 13-11-18source code;

Screenshot from 2017-04-28 13-14-12Screenshot from 2017-04-28 13-14-36Screenshot from 2017-04-28 13-14-52

Screenshot from 2017-04-28 13-15-07—————————————————————————-Queue,ArrayBlockingQueue,remove(),try catch(IllegalStateException),offer(),poll(),peek

 

Queue<Integer> q1 = new ArrayBlockingQueue<Integer>(3);
//ArrayBlockingQueue<Integer>(3) en fazla 3 item ekleyebileceğini söyler daha fazla eklersen sistem tamamen hata verir
q1.add(10);

yalnız 1 hilesi var

orjinal try catch için try yazıp ctrl+space basınca olur

try {

} catch (Exception e) {
// TODO: handle exception
}

 

try {
q1.add(40);
} catch (IllegalStateException e) {
System.out.println(“tried to add too many items to the queue.”);
}

Screenshot from 2017-04-28 16-05-54

Integer value = q1.remove();

//silmeye baştan başlar

System.out.println(“head of queue is: “+q1.element());

//elementin başını bulur ve yazdırır

 

hile yapılarak eklenen item silinmek istenirse

Screenshot from 2017-04-28 16-29-18method offer

kuyruğa fazladan eklenince hata vermez sadece sınırlandığı kadarını gösterir

ama addmethodunda sınırı geçersen sistem tamamen hata verir

Screenshot from 2017-04-28 16-42-06Screenshot from 2017-04-28 16-43-06

//poll() methodu listeden siler remove gibi
//poll() ile remove() arasındaki fark add() ile offer()

Screenshot from 2017-04-28 16-55-49

peek()

peek element ile aynı işi yapar tek fark element yokken peek null gösterirken element() komple sistemi çalıştırmaz yukarıdaki gibi kısaca peek ve element kuyruğun başını yani ilk eklenen itemi gösterir

Screenshot from 2017-04-28 17-03-18Screenshot from 2017-04-28 17-03-30özel not throw exceptions lar sisteme uymadığında komple sistem dururken

return special value sisteme uymadığında sistem hatayı görmezden gelir

queue ile ilgili daha fazla ayrıtı ve kullanımları biz sadece ArrayBlockingQueue olanı inceledik

https://docs.oracle.com/javase/7/docs/api/java/util/Queue.html

 

source code;

Screenshot from 2017-04-28 17-20-47 Screenshot from 2017-04-28 17-21-02 Screenshot from 2017-04-28 17-21-17——————————————–LinkedList,iterator,next(),hasNext()

iterable docs https://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html

old iterator

next()  only one item iterate //sadece başteki itemi iterate eder

Returns the next element in the iteration.
Screenshot from 2017-04-28 17-35-58Screenshot from 2017-04-28 17-36-13

hasNext()

Returns true if the iteration has more elements.
//hasNext() method bitinceye kadar bütün itemleri dndürür

Iterator<String> it = animals.iterator();

while(it.hasNext()){ //hasNext() method bitinceye kadar bütün itemleri dndürür
String value = it.next();//only first item
System.out.println(value);

if(value.equals(“cat”)){
it.remove();
}

 

//modern iteration,java 5 and later
for(String animal:animals){
System.out.println(animal);

Screenshot from 2017-04-28 17-40-58Screenshot from 2017-04-28 17-41-07source code;

Screenshot from 2017-04-28 18-07-22Screenshot from 2017-04-28 18-08-30daha fazla method hakkında bilgi için

https://docs.oracle.com/javase/7/docs/api/java/util/ListIterator.html

 

—————————————————implements Iterable<String>,LinkedList

 

class urlliblary implements Iterable<String> {
private LinkedList<String> urls = new LinkedList<>();

Implementing Iterable; Downloading Web Pages: Java Collections Framework Tutorial Part 11

Screenshot from 2017-04-28 21-51-32Screenshot from 2017-04-28 21-51-50

Screenshot from 2017-04-28 21-52-06

///////////////////////////////////////////////

———————Deciding Which Java Collection to Use: Java Collections

 

import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
import java.util.TreeSet;

public class özet {
    public static void main(String[] args) {

//////////////LİSTS/////////////////////////////
//store lists of objects
//dublicates are allowed
//objects remain in order
//elements are indexed via an integer
//cf.shopping list
//checking for particular item in list is slow
//looking an item up by index is fast
//Iterating through lists is relatively fast
//Note: you can sort list sif you want to

// if you only add or remove items at end of list, use ArrayList.
List<String> list1 = new LinkedList<>();

//removing or adding items elsewhere in the list?
List<String> list2 = new LinkedList<>();

////////////SETS/////////////////////
//Only store unique values
//great for removing dublicates
//not indexed, unlike lists
//very fast to check if a particular object exists
//if you want to use your own objects, you must implement hashcode() and equals().

//order is unimportant and OK if it changes?
//HashSet is not ordered.
Set<String> set1 = new HashSet<>();

//sorted in natural order ? use TreeSet -must implement Comparable for costum types
// (1,2,3 …, a,b,c…. etc)
Set<String> set2 = new TreeSet<>();

// Elements remain in order the were added
Set<String> set3 = new LinkedHashSet<>();

//////MAPS///////////////////////////////
//Key value pairs
//like lookup tables
//retrieving a value by key is fast
//iterating over map vlues is very slow
//maps not really optimised for iteration
//if you want to use your own objects as keys, you must implement hashCode() and equals().

//keys not in any particular order, and order liable to change.
Map<String, String> map1 = new HashMap<>();

//keys sorted in naturel order – must implement Comparable for costum types.
Map<String, String> map2 = new TreeMap<>();

//keys remain in order added
Map<String, String> map3 = new LinkedHashMap<>();

//there are also the SortedSet and ShortedMap interfaces.
}
}

 

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

Complex Data Structures:

 

Screenshot from 2017-04-30 21-34-00

örnek 2

Screenshot from 2017-04-30 21-55-47Screenshot from 2017-04-30 21-56-57

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PAYLAŞ
Önceki makalecollection
Sonraki makaleException

Kimler Neler Demiş?

İlk Yorum Hakkı Senin!

Bildir
avatar

wpDiscuz