java double和string 的转换 急~~~!!!!

static double getDouble(String fruit,double min, double max )
{
double pp = 0;

while ( pp < min && pp > max)
{
String ss = input(fruit);

pp = Double.parseDouble(ss);

}

return pp;
}
首先....这是个未完成的程式.
弄了几个小时...就是弄不好....希望大家帮忙.....
我最后想要的是getDouble(String fruit,double min, double max )
这个子程式.
String fruit 是一个被输入的数字.从String 被转换到Double
min和max是这个可输入数字的范围.如果fruit不在这个范围内,程式将让使用着重新输入,直到符合这个范围!
希望大家帮忙!谢谢!急!
大家最好帮我写完以上的程式...让它运行!!!
如果成功,我可以+分!!
......看来是我说的不太清楚.....
给个例子吧....
static void add()
{

String ss = "";

ss = input("new name : ");
if (ss.length() == 0)
return;
NameOfFruit[TypeAmount] = ss;

PriceOFEachFruit[TypeAmount] = getDouble("price : ",0.1,50);
InitialStock[TypeAmount] = getDouble("initialstock : ",0,300);
FinalStock[TypeAmount] = InitialStock[TypeAmount];
TypeAmount++;

sortOne();
}
让这个getdouble的程式在这个程式里运行!

楼主,我试验了一下,还需要另外一个函数来判断数字是否在min和max之间.应该把每个函数的功能分开.
楼主试试这个.可以运行:
import java.util.Scanner;

public class StringDouble {

public StringDouble() {
}

public static void main(String[] args){

getDouble(11L,13L);

}

public static double getDouble(double min,double max){
double result = 0;

Scanner scanner = new Scanner(System.in);

while( result <= min || result >= max){
System.out.println("请输入一个介于" + min + "--" + max + "之间的小数或整数");
result = scanner.nextDouble();
}
return result;
}
}
//为了方便演示,我改了些东西.楼主可以很方便的改回来.
//楼主,我觉得getDouble函数返回一个boolean更好一些.

/*楼主,这是更新后的*/
public static double getDouble(String fruit,double min,double max){
double result = Double.parseDouble(fruit);
while(true){
if(result > min && result < max){
break;
}else{
result = input();
}
}
return result;
}

public static double input(){
Scanner scanner = new Scanner(System.in);
System.out.println("input a double");
return scanner.nextDouble();
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-02-01
/*
* 创建日期 Feb 1, 2009
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package test;

import java.util.Scanner;

public class test {
static Scanner s = new Scanner(System.in);

static double getDouble(double min, double max) {
double pp = 0;
try {
do {
System.out.print("请输入0-3之间的数:");
String ss = s.next();
pp = Double.parseDouble(ss);
} while (pp < min || pp > max);
} catch (Exception e) {
System.out.print("请输入正确的格式,或超出范围:");
}
return pp;
}

public static void main(String[] args) {

getDouble(0, 3);
}
}

自己读下吧 大体你的意思是这样吗?
第2个回答  2009-02-01
while ( pp < min && pp > max)
这样能循环吗?
比如max =5 ; min =1

什么数能够 小于1并且大于5呢?
相似回答
大家正在搜