这次我们来说一些关于Java中方法的练习题,刚开始不是很难,一起来看看吧!
思路分析:这道题是让我们编写一个方法来求一个整数的各位数字之和,求一个整数的各位数字之和前面我们已经写过相关代码了,在这里只需要讲相关代码进行封装,写进一个方法里面,然后在主方法当中进行调用即可。题目很简单,我们按照题目要求编写一个sumDigits方法,然后把求一个整数的各位数字之和部分的代码写到sumDigits里面就可以了。
import java.util.Scanner;
public class Demo04_01{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数:");
long n = scanner.nextLong();
//计算该数字的所有位数之和
int sum = sumDigits(n);
System.out.println(sum);
}
public static int sumDigits(long n){
int sum=0;
while(true){
sum+=n%10;
n/=10;
if(n==0){
return sum;
}
}
}
}
运行结果:
请输入一个整数:1234
10
请输入一个整数:567
18
思路分析:这道题是判断回文数,我们前面也写过。
第一步:主函数里面让用户输入一个整数,然后用if语句来判断它是不是回文数,只不过if语句判断的过程可以单独写一个方法;
第二步:按照题目要求是一个布尔类型的方法isPalindrome,在这个布尔类型的方法里面,我们返回的是true或者false,为了让代码更简单,我们可以写成return reverse(num) == num;
第三步:然后针对这个reverse我们重新再写一个方法,reverse方法的功能是将用户输入的数字进行反向倒置。
第四步:编写代码。
import java.util.Scanner;
class Demo04_02{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数:");
int num = scanner.nextInt();
//判断该整数是否是回文
if(isPalindrome(num)){
System.out.println("该整数是回文数");
}else{
System.out.println("该整数不是回文数");
}
}
public static boolean isPalindrome(int num){
return reverse(num) == num;
}
public