Java编写一程序从键盘读入消息并从屏幕显示
时间: 2024-05-08 15:18:46 浏览: 102
回答:您可以尝试以下Java代码实现从键盘读入消息并在屏幕上显示:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); // 创建Scanner对象,用于读取键盘输入
System.out.print("请输入消息:");
String message = scanner.nextLine(); // 从键盘读取一行消息
System.out.println("您输入的消息是:" + message); // 将消息输出到屏幕
}
}
```
这段代码的运行结果如下:
```
请输入消息:Hello world!
您输入的消息是:Hello world!
```
请注意,这只是一个简单的示例程序,实际应用中可能需要进行更复杂的输入输出操作。
相关问题
编写从键盘读入5个字符放入一个字符数组,并在屏幕上显示他们的程序,请在程序中处理数组越界的异常.。用Java
在Java中,你可以使用`Scanner`类从键盘读取输入,然后将字符存储在一个字符数组中。为了处理数组越界的情况,你需要在添加元素到数组之前检查数组的当前长度。这里是一个简单的示例程序:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
char[] characters = new char[5]; // 创建一个包含5个元素的字符数组
Scanner scanner = new Scanner(System.in);
System.out.println("请输入5个字符:");
for (int i = 0; i < characters.length; i++) { // 避免数组越界
if (scanner.hasNextChar()) {
characters[i] = scanner.next().charAt(0); // 读取并存储下一个字符
} else {
break; // 如果已到达输入结束,跳出循环
}
}
try {
System.out.println("输入的字符数组为: " + new String(characters)); // 显示字符数组
} catch (NullPointerException e) {
System.out.println("数组为空,无法转换成字符串");
}
scanner.close();
}
}
```
在这个程序中,我们使用了一个`try-catch`块来捕获可能出现的`NullPointerException`,当试图将空数组转换为字符串时,这个异常会被抛出。
根据Java输入输出流的知识,编写程序,题目要求: (1) 键盘输入10个整数,从小到大进行排序。 (2) 接收键盘输入的字符串,用FileInputStream类将字符串写入文件,用FileOutputStream类读出文件内容显示在屏幕上。(文件存储位置和名字自行定义) (3)将一个文本文件的内容按行读出,每读出一行就顺序加上行号,并写入到另一个文件中。
好的,我可以回答关于Java输入输出流的问题。
(1) 这题需要使用数组和循环语句,先将10个整数读入数组中,再用循环语句进行排序,最后输出排序后的结果。可以参考如下代码:
```
import java.util.Scanner;
import java.util.Arrays;
public class SortNumber {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] nums = new int[10];
System.out.println("请输入10个整数:");
for(int i=0;i<nums.length;i++){
nums[i] = sc.nextInt();
}
Arrays.sort(nums);
System.out.println("排序后的结果为:");
for(int i=0;i<nums.length;i++){
System.out.print(nums[i] + " ");
}
}
}
```
(2) 首先需要用Scanner类从键盘上获取输入的字符串,再利用FileOutputStream类写入到文件中。读取文件内容则需要用FileInputStream类,最后输出显示在屏幕上。代码如下:
```
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.Scanner;
public class InputOutputFile {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要写入文件的字符串:");
String s = sc.nextLine();
FileOutputStream fos = new FileOutputStream("test.txt");
fos.write(s.getBytes());
fos.close();
FileInputStream fis = new FileInputStream("test.txt");
byte[] data = new byte[fis.available()];
fis.read(data);
fis.close();
String content = new String(data);
System.out.println("文件内容为:" + content);
}
}
```
(3) 这题需要用到BufferedReader类和PrintWriter类。先从一个文件读取每行内容,加上行号后再写入到另一个文件中。代码如下:
```
import java.io.*;
public class ReadAndWriteFile {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new FileReader("test1.txt"));
PrintWriter pw = new PrintWriter(new FileWriter("test2.txt"));
String line;
int i=1;
while((line = br.readLine()) != null){
pw.println(i++ + " " + line);
}
pw.close();
br.close();
System.out.println("文件内容已按行号写入到test2.txt文件中。");
}
}
```
阅读全文