现在可以正常工作,代码已完成感谢您的帮助。
问问题
1007 次
2 回答
0
您可以通过以下方式限制用户输入另一个值:(此程序适用于您从用户那里获取值)。这将要求输入数字,直到您输入 0 到 9 之间的数字。
您可以根据此制作代码。(仅供参考,如何限制用户输入错误)
Scanner scan=new Scanner(System.in);
int i=-1;
i=scan.nextInt();
while(i<=0 && i>=9){
i=scan.nextInt();
}
编辑
根据您的评论,在这种情况下,您需要将其更改为:
String s="";
while(!s.matches("^[0-9A-F]+$")){
s=scan.nextLine();
}
于 2012-12-12T15:34:32.253 回答
0
我会创建一个类来保存 RGB 值并让它检查输入的值是否正确。请参阅下面的测试代码......您可以根据需要处理更多案例。
import java.util.*;
public class jtest
{
public static void main(String args[])
{
new jtest();
}
public jtest()
{
ArrayList<RGB> RGBarray = new ArrayList<RGB>();
try
{
RGBarray.add(new RGB("F"));
RGBarray.add(new RGB("J"));
}
catch(BadRGBValueException BRGBVE)
{
BRGBVE.printStackTrace();
}
}
class BadRGBValueException extends Exception
{
public BadRGBValueException(String message)
{
super(message);
}
}
class RGB
{
public RGB(String input) throws BadRGBValueException
{
if (!input.matches("^[0-9A-F]+$"))
{
throw new BadRGBValueException(input + " is not a valid RGB value");
}
value = input;
}
private String value = null;
}
}
于 2012-12-12T15:36:07.453 回答