logo

מארז גמל בג'אווה

Java עוקבת אחר תחביר ה-camel-case למתן שמות למחלקות, ממשקים, שיטות ומשתנים. אם השם משולב עם שתי מילים, המילה השנייה תתחיל באות גדולה תמיד, כגון maxMarks( ), lastName, ClassTest, הסרת כל הרווחים הלבנים.

ישנן שתי דרכים להשתמש במארז Camel:

  1. אות גמל תחתון כאשר התו הראשון של המילה הראשונה הוא באותיות קטנות. בדרך כלל עוקבים אחר מוסכמה זו תוך מתן שמות לשיטות ולמשתנים. דוגמה, firstName, lastName, actionEvent, printArray( ) וכו'.
  2. מארז הגמל העליון הידוע גם בתור מקרה הכותרת, כאשר התו הראשון של המילה הראשונה הוא באותיות רישיות. בדרך כלל עוקבים אחר מוסכמה זו תוך מתן שמות למחלקות ולממשקים. לדוגמה, עובד, להדפסה וכו'.

המרת מיתר רגיל למארז גמלים

ניתן להמיר מחרוזת למוסכמה התחתון או העליון רק על ידי הסרת הרווחים מהמחרוזת.

דוגמה למקרה גמל תחתון:

קֶלֶט: JavaTpoint הוא אתר ההדרכה הטוב ביותר לשפות תכנות.

תְפוּקָה: javaTpointIsTheBestTutorialSiteForProgrammingLanguages.

דוגמה למקרה גמל עליון:

קֶלֶט: זה המדריך של Java

תְפוּקָה: ThisIsTheJavaTutorial

אַלגוֹרִיתְם:

  1. חצו את מערך התווים תו אחר תו עד שהוא מגיע לסוף.
  2. האות הראשונה של המחרוזת באינדקס = 0 מומרת לאותיות קטנות (כאשר עוקבים אחרי רישיון גמל תחתון) או לאותיות גדולות (כאשר עוקבים אחרי אות גמל עליון).
  3. במערך בודקים רווחים, והאות מיד אחרי הרווח מומרת לאותיות גדולות.
  4. אם נתקל בתו ללא רווח, הוא מועתק למערך המתקבל.

בואו ליישם את האלגוריתם בתוכנית Java.

א. המרת מיתר למארז גמל תחתון

LowerCamel.java

 public class LowerCamel { // function to convert the string into lower camel case static String convertString( String s ) { // to keep track of spaces int ctr = 0 ; // variable to hold the length of the string int n = s.length( ) ; // converting the string expression to character array char ch[ ] = s.toCharArray( ) ; // keep track of indices of ch[ ] array int c = 0 ; // traversing through each character of the array for ( int i = 0; i <n; 0 1 i++ ) { the first position of array i.e., letter must be converted to lower case as we are following camel in this program if( i="=" converting using tolowercase( in-built function ch[ ]="Character.toLowerCase(" ; need remove all spaces between, check for empty if ( ' incrementing space counter by ctr++ immediately after upper + continue loop } is not encountered simply copy character else c++ size new string will reduced have been removed thus, returning with return string.valueof( ch, 0, n - ctr driver code public static void main( args[ passing name a method str="Max Marks()" system.out.println( convertstring( variable str1="Last name" str2="JavaTpoint is the best tutorial site for programming languages." < pre> <p> <strong>Output:</strong> </p> <pre> maxMarks() lastName javaTpointIsTheBestTutorialSiteForProgrammingLanguages. </pre> <h3>B. Converting String to Upper Camel Case</h3> <p> <strong>UpperCamel.java</strong> </p> <pre> public class UpperCamel { // function to convert the string into upper camel case static String convertString( String s ) { // to keep track of spaces int ctr = 0 ; // variable to hold the length of the string int n = s.length( ) ; // converting the string expression to character array char ch[ ] = s.toCharArray( ) ; // // keep track of indices of ch[ ] array int c = 0 ; // traversing through each character of the array for ( int i = 0; i <n; 0 1 i++ ) { the first position of array i.e., letter must be converted to upper case. we checked this before second if statement as that is executed only when it encounters space and, there no a string. if( i="=" converting case using touppercase( in-built function ch[ ]="Character.toUpperCase(" ; need remove all spaces in between, check for empty ( ' incrementing counter by ctr++ immediately after + 1] continue loop } not encountered simply copy character else c++ new string will reduced have been removed thus returning with size return string.valueof( ch, 0, n - ctr driver code public static void main( args[ passing name method str="class test" system.out.println( convertstring( variable str1="employee" str2="this is the java tutorial" system.out.println(convertstring( < pre> <p> <strong>Output:</strong> </p> <pre> ClassTest Employee ThisIsTheJavaTutorial </pre> <hr></n;></pre></n;>

ב. המרת מיתר למארז גמל עליון

UpperCamel.java

 public class UpperCamel { // function to convert the string into upper camel case static String convertString( String s ) { // to keep track of spaces int ctr = 0 ; // variable to hold the length of the string int n = s.length( ) ; // converting the string expression to character array char ch[ ] = s.toCharArray( ) ; // // keep track of indices of ch[ ] array int c = 0 ; // traversing through each character of the array for ( int i = 0; i <n; 0 1 i++ ) { the first position of array i.e., letter must be converted to upper case. we checked this before second if statement as that is executed only when it encounters space and, there no a string. if( i="=" converting case using touppercase( in-built function ch[ ]="Character.toUpperCase(" ; need remove all spaces in between, check for empty ( \' incrementing counter by ctr++ immediately after + 1] continue loop } not encountered simply copy character else c++ new string will reduced have been removed thus returning with size return string.valueof( ch, 0, n - ctr driver code public static void main( args[ passing name method str="class test" system.out.println( convertstring( variable str1="employee" str2="this is the java tutorial" system.out.println(convertstring( < pre> <p> <strong>Output:</strong> </p> <pre> ClassTest Employee ThisIsTheJavaTutorial </pre> <hr></n;>