JAVA实验三:获取位数、判断回文 StringBuffer和String区别的应用

这篇博客介绍了如何利用Java的StringBuffer类来判断输入的整数位数和是否为回文数。文章通过对比StringBuffer和String类,解释了StringBuffer在字符串操作上的优势,并提供了相关方法的详细使用示例,如append、deleteCharAt、insert、reverse等。同时,给出了获取整数位数和判断回文数的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目


编写一个Java应用程序。用户从键盘输入一个整数,程序将判断这个数是几位数并输出其位数,并判断这个数是否是回文数(是,则输出“是回文数”,否则输出“不是回文数”)。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都是回文数。要求:定义两个方法,一个用于获取一个整数的位数,一个用于返回一个整数是否为回文数。

答案1(推荐)

import java.util.Scanner;

public class Main 
{
	static Scanner scan =new Scanner(System.in);
	static int input1=scan.nextInt();
	static String input=String.valueOf(input1);
	public int number()
	{
		return input.length();
	}
	public static String digits()
	{
		
		StringBuffer sb=new StringBuffer(input);
		sb.reverse();
		String s=sb.toString();
		System.out.println(s.length());
		return s;
	}
	public static void main(String[] args)
	{
		if(digits().equals(input)==true)
			System.out.println("是回文数");
		else 
			System.out.println("不是回文数");
	}
}

答案2(不推荐)

import java.util.Scanner;

public class Main 
{
	static Scanner scan=new Scanner(System.in);
	static int num=scan.nextInt();
	public static int Sum(int num)
	{
		int no=num;
		int sum=0;
		while(no!=0)
		{
			no/=10;
			sum+=1;
		}
		//System.out.println(sum);
		return sum;
	}
	public static boolean include()
	{
		int []a=new int[Sum(num)];
		int no=num;
		for(int i=0;i<Sum(num);i++)
		{
			a[i]=no%10;
			no/=10;
		}
		for(int i=0;i<Sum(num)/2;i++)
		{
			if(a[i]==a[Sum(num)-i-1])
				continue;
			else 
			{
			
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值