package com.expriment7;import java.util.Scanner;public class Demo_1 extends addNum{ /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
addNum an=new addNum();
System.out.print("请输入两个整数:");
try {
an.inputNum();
} catch (Exception e) {
System.out.print("输入类型不正确,请从新输入两个整数:");
an.inputNum();
}
int result=an.num[0]+an.num[1];
System.out.println("和是:"+result);
}}
class addNum
{
int num[]=new int[2];
public void inputNum()
{
Scanner in=new Scanner(System.in);
for(int i=0;i<2;i++)
{
num[i]=in.nextInt();
}
}
}
结果如图片,写到上面的代码不会写了,请高手帮忙看看应该咋写!
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
addNum an=new addNum();
System.out.print("请输入两个整数:");
try {
an.inputNum();
} catch (Exception e) {
System.out.print("输入类型不正确,请从新输入两个整数:");
an.inputNum();
}
int result=an.num[0]+an.num[1];
System.out.println("和是:"+result);
}}
class addNum
{
int num[]=new int[2];
public void inputNum()
{
Scanner in=new Scanner(System.in);
for(int i=0;i<2;i++)
{
num[i]=in.nextInt();
}
}
}
结果如图片,写到上面的代码不会写了,请高手帮忙看看应该咋写!
请输入两个整数:a b
不正确输入,请从新输入:1 a
不正确输入,请从新输入:3.5 2.5
不正确输入,请从新输入:12 22
和是:34
import java.util.Scanner;public class Demo_1 extends addNum{
public static void main(String[] args) {
addNum an=new addNum();
int result = an.inputNum();
System.out.println("和是:"+result);
}
}
class addNum {
int num[]=new int[2];
public int inputNum(){
Scanner in=new Scanner(System.in);
System.out.print("请输入两个整数:");
String[] str = new String[2];
boolean flag = true;
while(flag){
for(int i=0;i<2;i++)
{
str[i]=in.next();
if(!str[i].matches("\\d+")){
in.nextLine();//吃掉多余的字符串。
System.out.print("请重新输入两个整数:");
break;
}
else{
num[i] = Integer.parseInt(str[i]);
if(i == 1) flag = false;//什么时候退出。
}
}
}
return num[0]+num[1];
}
}
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
addNum an=new addNum();
boolean a=true;
System.out.print("请输入两个整数:");
while(a){
try {
an.inputNum();
a=false;
} catch (Exception e) {
System.out.print("输入类型不正确,请从新输入两个整数:");
//an.inputNum();
a=true;
}
}
int result=an.num[0]+an.num[1];
System.out.println("和是:"+result);
}}
class addNum
{
int num[]=new int[2];
public void inputNum()
{
Scanner in=new Scanner(System.in);
for(int i=0;i<2;i++)
{
num[i]=in.nextInt();
}
}
}我自己想出来了 能实现 但是觉得不太好!
!str[i].matches("\\d+" )
什么意思????