user4068716
user4068716

Reputation:

Java - Sharing int values between cases in a switch statment

I'm new to java and not sure how do I share values between cases in a switch statement? When I try to use a variable which i created in the previous case it tells me "variable might not have been initialized"

Code:

case 6:
    String stringCopy = stringInput;
    String lowerCase = stringCopy.toLowerCase();
    int vowelCount = 0;
    int stringLength = lowerCase.length();

    for (int i = 0; i <= stringLength - 1; ++i){
        switch(stringInput.charAt(i)) {
            case 'a':
            case 'e':
            case 'i':
            case 'o':
            case 'u':
                vowelCount++;
        }
        System.out.println(vowelCount);
        break;
    }

case 7:
    int noofConstants = 0;
    noofConstants = (stringLength - vowelCount);

Upvotes: 0

Views: 98

Answers (2)

Ker p pag
Ker p pag

Reputation: 1588

you cannot access a variable that you initialize in a separate code block which is case .

declare it outside/before the code block

int stringLength = 0;

switch(){

  case 6:
     stringLength = 1;
  break;

  case 7:
      stringLength = 2;
  break;

}

Upvotes: 1

Hovercraft Full Of Eels
Hovercraft Full Of Eels

Reputation: 285405

Declare and initialize value before the switch statement.

  int value = 0;
  switch (key) {
  case 3:
     value = 1 + 1;
     break;
  case 4:
     value = 1;
     break;

Upvotes: 4

Related Questions