0

可以遍历原始类型 char 的变量(使用 foreach 循环)?

我有三个字符

char char1 = 'A';
char charTest = 'P';
char character = 'R';

目前,我有一长串适用于 char1 的“if”语句:

if (char1 == 'A')
doSomething;
else if (char1 == 'K')
doSomethingElse;
else if (charPrev == 'G')
    doSomethingAgain;
else
    doSomethingYetAgain;

但是,我将把同一组“if”语句应用于其他字符变量(在本例中为 charTest 和字符)。

什么是实现这一目标的简单方法?感谢您的任何意见!

4

3 回答 3

6

最简单的方法是将变量放入数组并循环遍历它们。就像是

char[] charArray = {char1, charTest, character};

// Essentially this says, for each char in charArray
for (char character : charArray) {
    if (character == 'A')
        // Do Something
    else if (character == 'K')
        // Do Something
    else
        // Do Something
}
于 2013-04-18T02:55:47.437 回答
2

您可以将角色传递给运行开关的方法。

  public static void main(String[] args) {
    char char1 = 'A';
    char char2 = 'B';
    doStuff(char1);
    doStuff(char2);
  }

  public static void doStuff (char a)
  {
      switch (a) {
        case 'A':
          doSomething();
          break;
        case 'B':
          doSomethingElse();
          break;
        default:
          dontDoAnything();
          break;
      }
      return;
  } 
于 2013-04-18T02:56:37.400 回答
0

在 Java 中创建字符数组:

char[] characters = {'a', 'b', 'c'};

要使用 ' for each ' 术语循环 char 数组,并且因为您有 ' long list of if ',我建议您使用 switch:

for(char character : characters){
    switch(character){
          case 'a' : 
             //do something 
             break;
          case 'b' :
             //do something 
             break;
           ..
           ..
    }
}
于 2013-04-18T03:05:50.363 回答