我的代码不起作用,而且“checkValidNumber(瞬时值)”中有错误,表示字符串不能转换为double。
/**
* Add a pokémonCard to collection
*/
public void addPokémonCard()
{
final int INCREMENT = 1;
boolean repeat = true; // a boolean variable return true
// Ask user for details
String name = UI.askString("Name of PokémonCard: ");
if (name.equals("")) {
UI.println("I don't recognise that command");
addPokémonCard();
} else if (name == null ) {
UI.println("Please type a PokémonCard's name: ");
addPokémonCard();
} else {
// Check boundaries for the number of the momentary value of PokémonCard added
do {
String momentary_value = UI.askString("Momentary value: ");
// Check a suitable value of a PokémonCard
if (checkValidNumber(momentary_value)){
double momentary_value1 = Double.parseDouble(momentary_value);
// Increment the PokémonCard ID count and add to hashmap
pokémonCards.setPokémonCardId(); // Increment the id by 1
//add a PokémonCard image to display in the GUI
String imgFileName = UIFileChooser.open("Choose Image File: ");
pokémonCards.addPokémonCard(name, momentary_value1, imgFileName);
UI.println("Added");
repeat = false;
} else if (checkValidNumber(momentary_value) == false) { // Check for invalid value
UI.println("Please input a valid price!");
} else { // Check for invalid value
UI.println("Must be a number!");
}
}while (repeat); //repeat the method again if there's null input
}
}
/**
* Check a valid number for momentary value
* @return boolean false if it's an invalid number
* @param momentary_value for the price of PokemonCard
*/
public boolean checkValidNumber(double momentary_value){
boolean validNumber = false;
if (momentary_value > 0) {
validNumber = true;
}
return validNumber;
}
你需要先转换成双倍
checkValidNumber(Double.parseDouble(momentary_value))
问题内容: 我有一个双,其值是10,000,000.00(千万)。我必须将其转换为。当使用该方法时,我会得到 “ 1.0E7”,它遵循规范是正确的。不幸的是,我需要“ 10,000,000.00”(或等价的语言,具体取决于语言环境)。 如何做到这一点? 问题答案: 尝试之一 NumberFormat http://java.sun.com/javase/6/docs/api/java/text/N
问题内容: 我正在尝试使用FOP和Java生成PDF文档。 我以字符串而不是文件的形式接收XML。 如何将该XML字符串转换为XML输入流,以便可以调用xslfoTransformer.transform(source,res); 其中source是我的XML字符串作为输入流。 请提供您的建议。 问题答案: 您可能希望将其转换为,而不是。使用StringReader执行此操作。StreamSour
我正在创建一个基本的GUI,它接受用户输入的金额,并用预先存在的金额减去它。然而,它不会让我运行下面的一个,因为我得到了一个字符串不能转换为double的错误。这里使用parseInt方法不起作用,因为im使用getText方法。
我还是一名学生,刚开始学习java编程语言,我只是想问一下如何将函数main中的参数从字符串转换为double,就像将字符串转换为整数一样。pasreInt(arg)
问题内容: 我正在使用Scanner类获取输入,并希望在显示时将输入转换为大写字母。这是我的代码 由于我已经将其转换为大写,但输出就像 PS:我在终端中输入的字母是“ a” 但是我想将其显示为大写。我该如何更改? 问题答案: 该方法不会更改(不能)的值;它返回大写字母。更改 至 更新 更新后的问题现在指示 在键入 大写字母时要打印 它们 。Java无法做到这一点,因为Java无法控制操作系统如何将
这是我的代码片段。我想给用户一个可变长度的数字并将其转换为int数组。示例:输入:352040,输出:{3,5,2,0,4,0} 这出现了一个错误(线程“main”java.lang.NullPointerException中的异常),我不明白为什么。 谢谢你的帮助。