"హాయ్, అమిగో! ఇది మళ్లీ నేనే. నేను మీకు మరొక సరళమైన రేపర్ క్లాస్ గురించి చెప్పాలనుకుంటున్నాను. ఈ రోజు మనం క్యారెక్టర్, చార్ ఫర్ రేపర్ గురించి మాట్లాడుతాము."

"ఈ తరగతి కూడా చాలా సులభం."

కోడ్
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;
 }
}

"ఇది క్రింది వాటిని కలిగి ఉంది:"

1) అంతర్గత విలువను తీసుకునే కన్స్ట్రక్టర్ మరియు దానిని తిరిగి ఇచ్చే చార్వాల్యూ పద్ధతి.

2) క్యారెక్టర్ ఆబ్జెక్ట్‌లను తిరిగి ఇచ్చే విలువ యొక్క పద్ధతి, కానీ 0 నుండి 127 వరకు విలువలతో ఆబ్జెక్ట్‌లను కాష్ చేస్తుంది. పూర్ణాంకం, షార్ట్ మరియు బైట్ లాగానే.

3) hashCode() మరియు ఈక్వల్ మెథడ్స్ — మళ్ళీ, ఇక్కడ ఆశ్చర్యం ఏమీ లేదు.

"మరియు ఇది చాలా ఇతర ఉపయోగకరమైన పద్ధతులను కలిగి ఉంది (పైన చూపబడలేదు). నేను మీ కోసం కొన్నింటిని ఇక్కడ జాబితా చేస్తాను:"

పద్ధతి వివరణ
boolean isDefined(char)
అక్షరం యూనికోడ్ అక్షరమా?
boolean isDigit(char)
పాత్ర అంకెనా?
boolean isISOControl(char)
పాత్ర నియంత్రణ పాత్రా?
boolean isLetter(char)
అక్షరం అక్షరమా?
boolean isJavaLetterOrDigit()
అక్షరం అక్షరమా లేక అంకెనా?
boolean isLowerCase(char)
ఇది చిన్న అక్షరమా?
boolean isUpperCase(char)
ఇది పెద్ద అక్షరమా?
boolean isSpaceChar(char)
పాత్ర ఖాళీగా ఉందా లేదా అలాంటిదేనా (అదృశ్య అక్షరాలు చాలా ఉన్నాయి)?
boolean isTitleCase(char)
క్యారెక్టర్ టైటిల్‌కేస్ క్యారెక్టర్‌నా?

"ధన్యవాదాలు, కిమ్. ఈ పద్ధతుల్లో కొన్ని నాకు ఉపయోగపడతాయని నేను భావిస్తున్నాను."