cuốn sách gpt4 ai đã làm

c# - Chỉ hiển thị các tin nhắn từ ApplicationException

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 18:15:10 25 4
mua khóa gpt4 Nike

Tôi đang cố gắng lấy ApplicationException và nó chỉ hiển thị thông báo khi đầu vào không phải là số. Đây là những gì tôi có bây giờ:

static void getBookInfo(Sách sách)
{
bool isNumeric;
số phao;
số chuỗiĐầu vào;

Console.Write("Nhập tên sách: ");
book.Title = Console.ReadLine();
Console.Write("Nhập tên tác giả: ");
book.AuthorFirstName = Console.ReadLine();
Console.Write("Nhập họ tác giả: ");
book.AuthorLastName = Console.ReadLine();
Console.Write("Nhập giá sách: $");
numberInput = Console.ReadLine();

isNumeric = float.TryParse(numberInput, out number);

nếu(isNumeric)
book.Price = số;
khác
{
ném ngoại lệ ứng dụng mới
(
"Đây không phải là số!\n" +
"Xin vui lòng thử lại."
);
}
}

Toàn bộ Program.cs có hiệu lực sau khi chỉnh sửa. Vấn đề là phần ApplicationException hiển thị toàn bộ bản in của ngoại lệ, bây giờ nó chỉ hiển thị phần thông báo thay vì thực hiện điều đó. Thông thường điều này là đơn giản. :)

using System;

không gian tên Lab_6
{
class Program
{
static void Main(string[] args)
{
Địa chỉ địa chỉ = Địa chỉ mới();
address.StreetNumber = "800";
address.StreetName = "Phố 96 phía Đông";
address.City = "Indianapolis";
address.State = "IN";
address.ZipCode = "46240";

Sách sách = Sách mới();

thử
{
getBookInfo(sách);
book.PublisherAddress = địa chỉ;
book.PublisherName = "Nhà xuất bản Sams";

Console.WriteLine("----Sách----");
sách.display();
}
bắt (NegativeInputException cũ)
{
Console.WriteLine(ex.Message);
return;
}
bắt (ApplicationException cũ)
{
Console.WriteLine(ex.Message); // Tôi phải thay đổi nên chỉ có cái này,
// thay vì toàn bộ bản in.
return;
}
}

static void getBookInfo(Sách sách)
{
bool isNumeric;
số phao;
số chuỗiĐầu vào;

Console.Write("Nhập tên sách: ");
book.Title = Console.ReadLine();
Console.Write("Nhập tên tác giả:")
book.AuthorFirstName = Console.ReadLine();
Console.Write("Nhập họ tác giả: ");
book.AuthorLastName = Console.ReadLine();
Console.Write("Nhập giá sách: $");
numberInput = Console.ReadLine();

isNumeric = float.TryParse(numberInput, out number);

nếu(isNumeric)
book.Price = số;
khác
{
ném ngoại lệ ứng dụng mới
(
"Đây không phải là số!\n" +
"Xin vui lòng thử lại."
)
}
}
}
}

câu trả lời hay nhất

Ngoại lệ không hiển thị gì cả. Nó phụ thuộc vào mã nắm bắt chúng.

Ngoài ra, bạn không nên sử dụng Ứng dụng ngoại lệ. Hoặc sử dụng Exceptionhoặc sử dụng một cái gì đó cụ thể hơn như FormatException.

Về C# - chỉ hiển thị các thông báo từ ApplicationException, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/7642905/

25 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress