As I said before, how do I test if the entered character is one of the parameters? I've written this code, but it doesn't seem to run very well(or at all), no errors, however. Also, I need to use the basic code I've used here. Its for school and we lose points if we use things they haven't taught us (darn school).
class doody
{
public static void main(String[] args)
{ char i;
char input='D';
for(i='A';i<='Z';i++)//check if uppercase
{
if(input==i){
System.out.println("Uppercase");
switch(input){
case 'A':
case 'E':
case 'I':
case 'O':
case 'U':
System.out.println("Vowel"); break;
default: System.out.println("Not a vowel"); break;}
}
for(i='a';i<='z';i++)//check if lowercase
{
if(input==i){
System.out.println("Lowercase");
switch(input){
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
System.out.println("Vowel"); break;
default: System.out.println("Not a vowel"); break;
}}
for(i='0';i<='9';i++)//check if number
{
if(input==i)
System.out.println("Number");
}
}
}}}
Edit: Here is some code I threw together today. Much simpler. I don't know why this didn't occur to me earlier. It was probably because I was groggy, it was late.
class doody
{
public static void main(String[] args)
{
char input='$';//input here.
boolean lorn=false;
if(input>='a'&&input<='z')
{System.out.println("Lowercase");
lorn=true;
if(input=='a')System.out.println("Vowel.");
if(input=='e')System.out.println("Vowel.");
if(input=='i')System.out.println("Vowel.");
if(input=='o')System.out.println("Vowel.");
if(input=='u')System.out.println("Vowel.");
}
if(input>='A'&&input<='Z')
{System.out.println("Uppercase");
lorn=true;
if(input=='A')System.out.println("Vowel.");
if(input=='E')System.out.println("Vowel.");
if(input=='I')System.out.println("Vowel.");
if(input=='O')System.out.println("Vowel.");
if(input=='U')System.out.println("Vowel.");
}
if(input>='0'&&input<='9')
{
lorn=true;
System.out.println("Number");
}
if(lorn==false)System.out.println("It is a special character");
}
}
If it weren't a homework, you could use existing methods such as Character.isDigit(char)
, Character.isUpperCase(char)
and Character.isLowerCase(char)
which are a bit "smarter", because they don't operate only in ASCII, but also in various charsets.
static final char[] VOWELS = { 'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U' };
static boolean isVowel(char ch) {
for (char vowel : VOWELS) {
if (vowel == ch) {
return true;
}
}
return false;
}
static boolean isDigit(char ch) {
return ch >= '0' && ch <= '9';
}
static boolean isLowerCase(char ch) {
return ch >= 'a' && ch <= 'z';
}
static boolean isUpperCase(char ch) {
return ch >= 'A' && ch <= 'Z';
}