31 Temmuz 2016 Pazar

StringTokenizer

Giriş
Bu sınıfa ayraç listesi verilebilir.

Constructor - false
Ayraçları token olarak bize vermeyen constructor'ı şöyle kullanırız.
String str = ...;
StringTokenizer tokenizer = new StringTokenizer(str, ",");
Constructor - true
Bu metod ile istenirse ayraçları da token olarak alabilmek mümkün. Şöyle yaparız.
String myString = "a+b-c*d/e";

 List<String> operatorList = new ArrayList<String>();
 List<String> operandList = new ArrayList<String>();
 StringTokenizer st = new StringTokenizer(myString, "+-*/", true);
 while (st.hasMoreTokens()) {
    String token = st.nextToken();

    if ("+-/*".contains(token)) {
       operatorList.add(token);
    } else {
       operandList.add(token);
    }
 }

 System.out.println("Operators:" + operatorList);
 System.out.println("Operands:" + operandList);
 Çıktı olarak şunu verir.
Operators:[+, -, *, /]
Operands:[a, b, c, d, e]
hasMoreTokens metodu
Şöyle kullanırız.
while(tokenizer.hasMoreElements()) {...}
nextToken metodu
Açıklaması şöyle
java.util.StringTokenizer can also throw NoSuchElementException if there is no more token or element and you call nextToken() or nextElement() method.
To get rid of this exception while using Stringtokenizer call hasMoreTokens() or hashMoreElements() before proceding to call nextToken() or nextElement().
Şöyle kullanırız.
while(tokenizer.hasMoreElements()) {
  string token = tokenizer.nextToken();
}

28 Temmuz 2016 Perşembe

DefaultListModel Sınıfı

Giriş
Bu sınıf JList ile kullanılır.

constructor
Şöyle yaparız
DefaultListModel<String> model = new DefaultListModel<String>(); 
add metodu
Şöyle yaparız
String contact = ...;
model.addElement(contact);


ByteOrder Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.nio.ByteOrder;
nativeOrder metodu
Şöyle yaparız.
if (ByteOrder.nativeOrder().equals(ByteOrder.BIG_ENDIAN)) {
  System.out.println("Big-endian");
} else {
  System.out.println("Little-endian");
}


27 Temmuz 2016 Çarşamba

IvParameterSpec Sınıfı

constructor
Şöyle yaparız.
IvParameterSpec iv = new IvParameterSpec("...".getBytes());

26 Temmuz 2016 Salı

FilterInputStream Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.io.FilterInputStream;
Bu sınıfın tam tersi işlemi FilterOutputStream Sınıfı yapar.

available metodu
İmzası şöyle
@Override
public int available() throws IOException;
read metodu
İmzası şöyle
@Override
public int read() throws IOException;
read metodu
İmzası şöyle
@Override
public int read(byte[] b, int off, int len) throws IOException;

FilterOutputStream Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.io.FilterOutputStream;
Bu sınıfın tam tersi işlemi FilterInputStream Sınıfı yapar.

close metodu
İmzası şöyle
@Override
public void close() throws IOException;
flush metodu
İmzası şöyle
@Override
public void flush() throws IOException;
write metodu
İmzası şöyle
@Override
public void write(int b) throws IOException;
write metodu
İmzası şöyle
@Override
public void write(byte[] b, int boff, int blen) throws IOException;

Inflater Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.util.zip.Inflater;
Sıkıştırılmış veriyi açmak için kullanılır. Sıkıştırmak için Deflater Sınıfı kullanılır.

constructor
Şöyle yaparız
Inflater inflater = new Inflater();
inflate metodu
Şöyle yaparız
//Buffer of uncompressed databyte[] outBuf = ...;try {
  inflater.inflate(outBuf);
} catch(DataFormatException dfe) {
...
}
reset metodu
Şöyle yaparız
// Reset the inflator so we can re-use it
inflater.reset();
setInput metodu
Şöyle yaparız
//Buffer of compressed data read from the stream
byte[] inBuf = ...;

//Length of data in the input data
int inLength = ...;

inflater.setInput(inBuf, 0, inLength);


22 Temmuz 2016 Cuma

WeakReference Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.lang.ref.WeakReference;
Bu sınıf ile SoftReference ve WeakHashMap sınıfları ilgilidir. GC devreye girince WeakReference'ın sahip olduğu nesne silinir.

constructor
Şöyle yaparız.
Object obj = new Object();
WeakReference<Object> ref = new WeakReference<>(obj);
get metodu
Örnek
Şöyle yaparız.
Object obj = ref.get();
if (obj != null) {...}
Örnek
Şöyle yaparız.
HashMap<Employee, EmployeeVal> map = 
                      new HashMap<Employee, EmployeeVal>();
WeakReference<HashMap<Employee, EmployeeVal>> aMap = 
  new WeakReference<HashMap<Employee, EmployeeVal>>(map);

map = null;

while (null != aMap.get()) {
  aMap.get().put(new Employee("Foo"),new EmployeeVal("Bar"));
  System.out.println("Size of aMap " + aMap.get().size());
  System.gc();
}