【问题标题】:Java highlighting and selecting inputJava 突出显示和选择输入
【发布时间】:2012-10-18 04:54:31
【问题描述】:

我已经开始用 Java 编写一个类似于武器商店的游戏。我试图让用户能够在控制台中选择打印在 HashMap 中的项目。一旦用户选择并突出显示该项目,用户就会购买该项目。是否有内置的实用程序 Java 支持这一点?这是我所拥有的:

public static int purchaseMedicine(int goldAmount) {

    HashMap<String, Integer> map = new HashMap<String, Integer>();
    map.put("Jewel of Open", 500);
    map.put("Potion", 800);
    map.put("Hi-Potion", 2000);
    map.put("Elixir", 8000);
    map.put("Manna Prism", 4000);
    map.put("Antivenom", 200);
    map.put("Hammer", 200);
    map.put("Library Card", 500);

    int index = 0;

    for(Map.Entry<String, Integer> entry : map.entrySet()) {

        System.out.println(entry.getKey() + " " + entry.getValue());
    }

    System.out.printf("\n\tGold %d\n\n", goldAmount);
    return index; // Returns the instances of medicineList
}

【问题讨论】:

    标签: java console highlighting


    【解决方案1】:

    在 Java 中内置答案是否定的。

    可在标准 Java 中使用,可以尝试使用 System.out.println() 语句中的 ANSI escape codes,但这些可能会被您正在使用的操作系统控制台破坏。

    如果您愿意导入一个小 jar 文件,最好的解决方案是Jansi。在这里,程序员可以更好地控制控制台中显示的内容。所以基本上代码看起来像这样:

    System.out.println( ansi().eraseScreen().fg(RED).a("Hello").fg.(GREEN).a(" World").reset() )
    

    您只需要自己进行逻辑检查以查看该项目是否已被购买。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-15
      • 2015-12-12
      • 1970-01-01
      相关资源
      最近更新 更多