Redian新闻
>
新手问一个弱问题, 关于从stdin输入int或者其他数值的实现方法
avatar
新手问一个弱问题, 关于从stdin输入int或者其他数值的实现方法# Java - 爪哇娇娃
c*n
1
刚刚开始学java.
我做的事情是类似于C中scanf完成的功能
目前找到一种方法, 想问一下这个是不是java程序常用的方法, 如果不是, 那么常用的方

是什么?
我找到的实现方法如下:
首先
InputStreamReader isr = new InputStreamReader ( System.in );
StreamTokenizer st = new StreamTokenizer ( isr );
然后使用方法st.nextToken()
判断st.nextToken()的返回值(返回ttype),
如果ttype等于TT_NUMBER, 说明读取的是一个number, 并且该number将被存放于st.nval
然后读取st.nval就可以得到该数
是这样实现的么? 还有更好的实现方法么?
关于这个方法我还有一个问题, 根据我查的文档nval是double型变量啊, 那要读入int变

怎么办呢?
nval:
public double nval
If the current token is a number, this field contains
avatar
a*l
2
java 5 有现成的scanf



【在 c*********n 的大作中提到】
: 刚刚开始学java.
: 我做的事情是类似于C中scanf完成的功能
: 目前找到一种方法, 想问一下这个是不是java程序常用的方法, 如果不是, 那么常用的方
: 法
: 是什么?
: 我找到的实现方法如下:
: 首先
: InputStreamReader isr = new InputStreamReader ( System.in );
: StreamTokenizer st = new StreamTokenizer ( isr );
: 然后使用方法st.nextToken()

avatar
g*g
3
most java programs do not use input from console that's why its
support is not strong, for int you can convert from double
by (int)double_number. Scanner is a new solutino in java5



【在 c*********n 的大作中提到】
: 刚刚开始学java.
: 我做的事情是类似于C中scanf完成的功能
: 目前找到一种方法, 想问一下这个是不是java程序常用的方法, 如果不是, 那么常用的方
: 法
: 是什么?
: 我找到的实现方法如下:
: 首先
: InputStreamReader isr = new InputStreamReader ( System.in );
: StreamTokenizer st = new StreamTokenizer ( isr );
: 然后使用方法st.nextToken()

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。