当前位置: 代码迷 >> Java相关 >> [求助]求教JAVA中单个字符输入问题
  详细解决方案

[求助]求教JAVA中单个字符输入问题

热度:200   发布时间:2007-09-21 19:37:17.0
[求助]求教JAVA中单个字符输入问题
Scanner 类中 可用
Scanner cin = new Scanner(new BufferedInputStream(System.in));
String a = cin.next(); // == scanf("%s",a);
cin.nextLine(); //读一行
cin.nextInt(); //读整型
cin.nextLong();
cin.nextFloat();
cin.nextDouble();

有谁能告诉我JAVA有没有像C/C++中读取单个字符的方法啊?????

比如像ch=getchar(); scanf("%c",&ch);这种?????
搜索更多相关的解决方案: JAVA  字符  输入  

----------------解决方案--------------------------------------------------------

可以实现scanf("%c",&ch)的功能,但不能直接实现getchar()的功能.


----------------解决方案--------------------------------------------------------

程序代码:

import java.io.*;

public class ReaderChar{
public static void main(String[] args)throws IOException{
Reader reader =new InputStreamReader(System.in);
int c;
while((c =reader.read())!=-1){ //reader a character
System.out.println(\"The character you inputed :\"+(char)c);
}
}
}


----------------解决方案--------------------------------------------------------
首先谢谢楼上那个帅哥的帮助

但这个我用试了一下~`

~可以从键盘读一个字符进来~~~

那么怎么样读如下数据

3, 13, 6

不是读一行当字符处理~~~

----------------解决方案--------------------------------------------------------
LZ是想把这些数字读取出来吧?
----------------解决方案--------------------------------------------------------
不是 一个题~~

读入数据

5, 12, 13
5, 14, 7

这样

C语言
int a,b,k; char ch;
while(scanf("%d%c %d%c %d",&a,&ch,&b,&ch,&k)!=EOF)

~~java杂实现呢??就是那个','不会读~~~
----------------解决方案--------------------------------------------------------

目的还是要读那些数字吧?
看看是不是你想要的效果

程序代码:

import java.util.Scanner;

public class ReadNumber{
public static void main(String[] args){
Scanner s =new Scanner(System.in).useDelimiter(\"\\D+\");
int a,b,c;
while(s.hasNext()){
a =s.nextInt();
b =s.nextInt();
c =s.nextInt();
System.out.println(\"a =\"+a+\",b =\"+b+\",c =\"+c);
}
}
}


----------------解决方案--------------------------------------------------------
好~~我去看看~~~不管行不行~太谢谢你了~~
----------------解决方案--------------------------------------------------------
哎呀~~~太感激你了~~

我只是JAVA初学者~~太好了~~

Scanner s =new Scanner(System.in).useDelimiter("\\D+");

不过我想知道这个.useDelimiter("\\D+"); 什么意思呢??

和这个Scanner s =new Scanner(System.in);有什么区别呢??
----------------解决方案--------------------------------------------------------
那个...可能不太容易跟你讲清楚.
意思就是把输入的字符串中非数字部分过滤掉.
你可以自己去看JAVA文档中关于useDelimiter()方法的介绍.
----------------解决方案--------------------------------------------------------
  相关解决方案