用Java设计一个程序从键盘输入若干行文字,最后输入的一行为"end”,代表结束标记。统计该段文字中英文字母的个数。2》将其中的所有单词the全部改为a,输出结果。将该文字段所有的数字丰找出来输出。
时间: 2024-02-25 22:58:55 浏览: 74
失败:" + e.getMessage());
}
}
// 查询余额
private static void queryBalance(Connection conn) {
try {
Statement stmt = conn.createStatement();
String sql = "SELECT balance FROM " + USER_TABLE + " WHERE account='" + account + "'";
ResultSet rs = stmt.executeQuery(sql);
if (rs.next()) {
double balance = rs.getDouble("balance");
System.out好的,这个问题我可以回答。这是一个比较基础的Java编程问题,下面是我写.println("余额为:" + balance + "元");
}
} catch (SQLException e) {
System.out.println("查询的代码,可以完成你的要求:
```java
import java.util.Scanner;
public class TextAnalyzer {
public static void main(String余额失败:" + e.getMessage());
}
}
// 查询交易记录
private static void queryRecord(Connection conn)[] args) {
Scanner scanner = new Scanner(System.in);
String line;
int letterCount = 0;
while (!(line {
try {
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM " + RECORD_TABLE + " WHERE account='" = scanner.nextLine()).equals("end")) {
letterCount += countLetters(line);
}
System.out.println("英文字母个数 + account + "'";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
String type = rs.getString("type");
double amount = rs.getDouble("amount");
Timestamp time = rs.getTimestamp("time");
System.out.println("交易类型:"为:" + letterCount);
scanner = new Scanner(System.in);
while (!(line = scanner.nextLine()).equals("end")) {
line + type + ",交易金额:" + amount + "元,交易时间:" + time);
}
} catch (SQLException = line.replaceAll("\\bthe\\b", "a");
System.out.println(line);
}
scanner = new Scanner(System.in);
while (!(line = scanner.nextLine()).equals("end")) {
String[] words = line.split("\\s+");
for (String word : words e) {
System.out.println("查询交易记录失败:" + e.getMessage());
}
}
// 记录交易记录
private static void record(Connection conn, String type, double amount) {
try {
Statement stmt = conn.createStatement();
) {
if (isNumeric(word)) {
System.out.println(word);
}
}
}
}
private static int String sql = "INSERT INTO " + RECORD_TABLE + " (account, type, amount) VALUES ('" + account + "', '" + type countLetters(String line) {
int count = 0;
for (char c : line.toCharArray()) {
if (Character.isLetter + "', " + amount + ")";
stmt.executeUpdate(sql);
System.out.println("交易记录已记录!");
} catch (SQLException(c)) {
count++;
}
}
return count;
}
private static boolean isNumeric(String str) {
try e) {
System.out.println("记录交易记录失败:" + e.getMessage());
}
}
}
```
这个程序 {
double d = Double.parseDouble(str);
} catch (NumberFormatException nfe) {
return false;
}
return true;
使用了MySQL数据库,如果您没有安装MySQL,请先安装MySQL,并创建一个名为"atm"的数据库。程序中的用户表和交易记录表都是在程序中动态创建的,如果您已经在MySQL中创建了这 }
}
```
这个程序通过三个while循环实现了三个功能:
1. 统计英文字母个两张表,则可以删除程序中的"创建用户表和交易记录表"代码。
程序中的登录账号和密码数,每输入一行就调用countLetters方法计算一下这一行中英文字母的个数,最后是在程序中硬编码的,实际应用中应该使用用户输入的账号和密码进行登录验证。此外,程序中的SQL语句使用了字符串拼接,存在SQL注入的风险,实际应用中应该使用预编译语句或ORM框架来避免SQL注入。
阅读全文