class Student { private String name; // full name // getFamilyName: return the family name. // Only handles names of the form "JIM CLARKE" public String getFamilyName () { int pos = 0; // the character position we're // currently looking at String result = ""; // the family name we're // building up while (pos < name.length()) { if (name.charAt(pos) == ' ') { if (pos + 1 == name.length() || name.charAt(pos+1) == ' ') return result; } result += name.charAt(pos); pos++; } return result; } }
// Test program to create a student object and print // the student's family name. public class TestStudent2 { public static void main (String[] args) { Student stu = new Student ("CLARKE JIM"); System.out.println ("Family name: >>>" + stu.getFamilyName() + "<<<"); } }
Family name: >>>CLARKE<<<
// Test program to create various student objects with // different names, and print the student's family name. public class TestStudent2 { public static void main (String[] args) { String name = "CLARKE R JIM N "; Student stu = new Student (name); System.out.println ("\nTesting: >>" + name + "<<"); System.out.println ("Family name: >>" + stu.getFamilyName() + "<<"); name = "CLARKE JIM "; stu = new Student (name); System.out.println ("\nTesting: >>" + name + "<<"); System.out.println ("Family name: >>" + stu.getFamilyName() + "<<"); name = "CLA R JIM "; stu = new Student (name); System.out.println ("\nTesting: >>" + name + "<<"); System.out.println ("Family name: >>" + stu.getFamilyName() + "<<"); name = "CLA"; stu = new Student (name); System.out.println ("\nTesting: >>" + name + "<<"); System.out.println ("Family name: >>" + stu.getFamilyName() + "<<"); name = "CLA "; stu = new Student (name); System.out.println ("\nTesting: >>" + name + "<<"); System.out.println ("Family name: >>" + stu.getFamilyName() + "<<"); name = " "; stu = new Student (name); System.out.println ("\nTesting: >>" + name + "<<"); System.out.println ("Family name: >>" + stu.getFamilyName() + "<<"); } }
Testing: >>CLARKE R JIM N << Family name: >>CLARKE R<< Testing: >>CLARKE JIM << Family name: >>CLARKE<< Testing: >>CLA R JIM << Family name: >>CLA R<< Testing: >>CLA<< Family name: >>CLA<< Testing: >>CLA << Family name: >>CLA<< Testing: >> << Family name: >><<
[ CSC108 Home | Outline | Announcements | Newsgroup | Assignments | Lectures | Marks | Links ]
© Copyright 2000. All Rights Reserved.