Write a method called variety that returns the number of dis
Write a method called variety that returns the number of distinct values appearing in an array of Strings. For example, if an array called slist contains the values[“abc”, “def”, “abc”, “xyz”, “def”] variety(slist) should return 3.
Solution
import java.util.Arrays;
public class CountDiffArray {
/**
* @param slist
* @return
*/
public static int variety(String[] slist) {
int count = 0;
for (int i = 0; i < slist.length; i++) {
boolean isDistinct = false;
for (int j = 0; j < i; j++) {
if (slist[i] == slist[j]) {
isDistinct = true;
break;
}
}
if (!isDistinct) {
count++;
}
}
return count;
}
/**
* @param args
*/
public static void main(String[] args) {
String[] slist = { \"abc\", \"def\", \"abc\", \"xyz\", \"def\" };
System.out.println(Arrays.toString(slist));
System.out.println(\"Number of distinct elements : \" + variety(slist));
}
}
OUTPUT:
[abc, def, abc, xyz, def]
Number of distinct elements : 3
