如何处理用户在下面的每个方法中输入字符串。我使用不同的建议尝试了很多次,错误一直在无限循环。如何强制用户输入int而不是字符串,方法是添加下面的方法,而不是在它们当前的状态下修改它们。
private void readMonth(Scanner keyboardIn)
{
boolean success = false;
while(!success)
{
try
{
System.out.print("Enter the month the account opened: ");
int m = keyboardIn.nextInt();
dateOpened.setMonth(m);
success = true;
}catch(Exception e)
{
System.out.println(e.getMessage());
}
}
}
// Enter the year, checking for errors
private void readYear(Scanner keyboardIn)
{
boolean success = false;
while(!success)
{
try
{
System.out.print("Enter the year the account opened: ");
int y = keyboardIn.nextInt();
dateOpened.setYear(y);
success = true;
}catch(Exception e)
{
System.out.println(e.getMessage());
}
}
}
当您尝试输入除数字以外的任何字符时,IDValidation
函数将返回false。我还打印了返回,所以你可以很容易地理解它是如何工作的。
import java.util.Scanner;
public class Daniel {
private static Scanner sc;
private static boolean idValidation(String id) {
try {
Integer.parseInt(id);
System.out.println("return true");
return true;
} catch (NumberFormatException e) {
System.out.println("return false");
return false;
}
}
private static void readMonth(Scanner keyboardIn)
{
boolean success = false;
while(!success)
{
try
{
System.out.print("Enter the month the account opened: ");
String m = keyboardIn.nextLine();
if(!idValidation(m)){
return;
}
// dateOpened.setMonth(m);
success = true;
}catch(Exception e)
{
System.out.println(e.getMessage());
}
}
}
// Enter the year, checking for errors
private static void readYear(Scanner keyboardIn)
{
boolean success = false;
while(!success)
{
try
{
System.out.print("Enter the year the account opened: ");
String y = keyboardIn.nextLine();
if(!idValidation(y)){
return;
}
// dateOpened.setYear(y);
success = true;
}catch(Exception e)
{
System.out.println(e.getMessage());
}
}
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
readMonth(sc);
readYear(sc);
}
}
我的代码不起作用,而且“checkValidNumber(瞬时值)”中有错误,表示字符串不能转换为double。
问题内容: PHP中有多字节字符串函数来处理多字节字符串(例如:CJK脚本)。例如,我想通过使用python中的函数来计算一个多字节字符串中有多少个字母,但是它返回的结果不准确(即该字符串中的字节数) PHP中有像mb_strlen这样的软件包或函数吗? 问题答案: 使用Unicode字符串: 注意字符串前面。 要将字节字符串转换为Unicode,请使用:
问题内容: 我想用Java初始化一个String,但是该字符串需要包含引号;例如:。我试着做: 但这不起作用。如何”在字符串中包含? 问题答案: 在Java中,你可以使用:
我有一个string变量用来获取输入值。为了前任。 当我给出(约翰·乔尼)的价值时,它只显示约翰。有什么办法能弄到整根绳子吗?
我正在用一种形式做一个简单的插入。 no_text dbname_m_db 我想回去看看。所以我要做4个测试,它们是 测试1:插入no_text 测试2:插入no_text_external 测试3:不插入任何文本 测试4:不同时插入两个 所以结果是,只有test3是成功地查看它。而其他3返回错误号格式例外:对于输入字符串:""。我不知道过滤它的最佳方法。这里的代码,我的工作。任何想法?
本文向大家介绍c++中template对字符串的处理方法,包括了c++中template对字符串的处理方法的使用技巧和注意事项,需要的朋友参考一下 C++中的Template作用是把仅类型不同但功能相似的函数合并在一起,但是有时候template中的函数并不能满足所有的类型调用。如下所示: 所有的数字类型使用该模板都没有问题,但是string类型却不行,因为不支持有string到int的类型转换(