"Hi, Amigo! Ako na naman. Gusto kong ikuwento sa iyo ang tungkol sa isa pang medyo simpleng klase ng wrapper. Ngayon ay pag-uusapan natin ang tungkol sa Character, ang wrapper para sa char."
"Medyo simple din ang klase na ito."
class Character
{
private final char value;
Character(char value)
{
this.value = value;
}
public char charValue()
{
return value;
}
static final Character cache[] = new Character[127 + 1];
public static Character valueOf(char c)
{
if (c <= 127)
return cache[(int)c];
return new Character(c);
}
public int hashCode()
{
return (int)value;
}
public boolean equals(Object obj)
{
if (obj instanceof Character)
{
return value == ((Character)obj).charValue();
}
return false;
}
}
"Ito ay may mga sumusunod:"
1) Isang constructor na kumukuha ng panloob na halaga at isang paraan ng charValue na nagbabalik nito.
2) Isang valueOf method na nagbabalik ng mga Character object, ngunit nag-cache ng mga object na may mga value mula 0 hanggang 127. Tulad ng Integer, Short, at Byte.
3) hashCode() at katumbas ng mga pamamaraan — muli, walang nakakagulat dito.
"At mayroon itong maraming iba pang kapaki-pakinabang na pamamaraan (hindi ipinapakita sa itaas). Ililista ko ang ilan para sa iyo dito:"
Pamamaraan | Paglalarawan |
---|---|
|
Unicode character ba ang character? |
|
Ang karakter ba ay isang digit? |
|
Ang karakter ba ay isang control character? |
|
Ang karakter ba ay isang liham? |
|
Ang karakter ba ay isang titik o isang digit? |
|
Ito ba ay isang maliit na titik? |
|
Ito ba ay isang malaking titik? |
|
Ang karakter ba ay isang puwang o isang katulad na bagay (mayroong maraming hindi nakikitang mga character)? |
|
Ang karakter ba ay isang titlecase na character? |
"Salamat, Kim. I think some of these ways will be useful for me."
GO TO FULL VERSION