JAVA题,将一个字符串的值转换成浮点型(double)数值
创建一个类(DoubleConverter),该类的作用是将一个字符串的值转换成浮点型(double)数值要求:设计一个测试类来测试DoubleConverter。当测试...
创建一个类(DoubleConverter),该类的作用是将一个字符串的值转换成浮点型(double)数值
要求:设计一个测试类来测试 DoubleConverter。当测试类开始运行时,要求用户从键盘输入一个字符串,然后调用 DoubleConverter 的方法将字符串转换成为一个浮点型的数值。当用户输入的字符串不是浮点数时,该方法应该提示 错误,并退出程序;否则返回该数值。 提示:把这两个类放在包内。不能使用 Java 内置的 Integer 类和 Scanner 类,而必须使用 String 类的 charAt 等方法提 取每一个数字。 展开
要求:设计一个测试类来测试 DoubleConverter。当测试类开始运行时,要求用户从键盘输入一个字符串,然后调用 DoubleConverter 的方法将字符串转换成为一个浮点型的数值。当用户输入的字符串不是浮点数时,该方法应该提示 错误,并退出程序;否则返回该数值。 提示:把这两个类放在包内。不能使用 Java 内置的 Integer 类和 Scanner 类,而必须使用 String 类的 charAt 等方法提 取每一个数字。 展开
2个回答
展开全部
import java.io.*;
public class test{
public static void main(String [] args) {
try{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = null;
System.out.println("Enter your value:");
str = br.readLine();
System.out.println("your value is :"+str);
int i=Integer.parseInt(str);
System.out.println(i);
}catch(Exception e){
System.exit(0);
}
}
}
展开全部
import java.io.*;
class Test{
public static void main(String[] args){
String value=null;
double result=0;
try{
BufferedReader bis =new BufferedReader(new InputStreamReader(System.in));
while((value=bis.readLine())!=null){
DoubleConverter dc= new DoubleConverter();
if(!dc.testDouble(value)) {
System.out.println("输入不是浮点型");
System.exit(-1);
}
else {
result = dc.doConvert(value);
System.out.println("double value:"+result);
}
}
bis.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
class DoubleConverter{
boolean testDouble(String s){
for(int i=0;i<s.length();i++)
if(s.charAt(i)=='d'||s.charAt(i)=='D') return true;
return false;
}
double doConvert(String s)
{
double val = 0;
try{
ByteArrayInputStream bais =new ByteArrayInputStream(s.getBytes());
DataInputStream dis = new DataInputStream(bais);
val = dis.readDouble();
bais.close();
dis.close();
}catch(Exception e)
{
e.printStackTrace();
}
return val;
}
}
class Test{
public static void main(String[] args){
String value=null;
double result=0;
try{
BufferedReader bis =new BufferedReader(new InputStreamReader(System.in));
while((value=bis.readLine())!=null){
DoubleConverter dc= new DoubleConverter();
if(!dc.testDouble(value)) {
System.out.println("输入不是浮点型");
System.exit(-1);
}
else {
result = dc.doConvert(value);
System.out.println("double value:"+result);
}
}
bis.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
class DoubleConverter{
boolean testDouble(String s){
for(int i=0;i<s.length();i++)
if(s.charAt(i)=='d'||s.charAt(i)=='D') return true;
return false;
}
double doConvert(String s)
{
double val = 0;
try{
ByteArrayInputStream bais =new ByteArrayInputStream(s.getBytes());
DataInputStream dis = new DataInputStream(bais);
val = dis.readDouble();
bais.close();
dis.close();
}catch(Exception e)
{
e.printStackTrace();
}
return val;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询