当前页面: 开发资料首页 → J2SE 专题 → 编写从键盘读入10个字符放入一个字符数组,并在屏幕上显示它们的程序.
编写从键盘读入10个字符放入一个字符数组,并在屏幕上显示它们的程序.
摘要: 编写从键盘读入10个字符放入一个字符数组,并在屏幕上显示它们的程序.
编写从键盘读入10个字符放入一个字符数组,并在屏幕上显示它们的程序.请处理数组越界异常
====================
我这样理解题目要求固定输入10个字符,,那么我们先定义一个数组,不管它的容量是否=10,如果数组大小为2那么在输入10字符时提示越界,如果大于或等于10正常;
就是说数组的大小是变化.输入的字符数是固定.的,
不知大家怎么理解呢?
如果你的数组长度正好是10,但是输入的东西却超过10个,那就得注意了吧
它就固定只输入10个,纳闷.
其实很简单的问题千万不要复杂化了,我用java简单的实现了一现,如果你想限定输入仅为10个字符,加一个控制就可以了:
class CharPrint
{
public static void main(String[] args) throws Exception
{
int data;
System.out.println("请输入10个字符,然后回车.输入'#'号键退出程序!");
while((data=System.in.read())!='#')
{
System.out.write(data);
}
}
}
楼上的,这个好像也没什么异常出现,
我问这个好像有点变态,,不怎么实用,不过还是希望有人共同讨论下,
up
up up
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class ReadChar {
public static void main(String[] args) throws IOException {
BufferedReader buf = new BufferedReader(
new InputStreamReader(System.in));
System.out.print("请输入十个字符: ");
String text = buf.readLine();
char c[] = new char[10];
try {
for (int i = 0; i < text.length(); i++) {
c[i] = text.charAt(i);
System.out.print(c[i]);
}
} catch (ArrayIndexOutOfBoundsException ex) {
System.out.println();
System.out.println("输入字符超出要求,只显示前十个字符");
}
}
}
不知道是不是这个意思。
同意楼上!