Java基础练习题4---[1.将一个字符串逆序输出;2.判断一个字符串是否对称3.写一个方法用于获取文件后缀名4.查找指定字符在字符串中出现的次数]


1.将一个字符串逆序输出

import java.util.Scanner;
/**
 1.将一个字符串逆序输出   例如:abcd   --> dcba
 */
public class Demo01 {
    public static void main(String[] args) {
        //Scanner输入
        Scanner s=new Scanner(System.in);
        System.out.println("输入数组");
        String s1=s.next();
        System.out.println("倒序列数组为:");
        //调用方法
        Demo01.daoxu(s1);
    }
//写一个静态的转换方法
    public static void daoxu(String s){
        //length()获取数组长度
        //System.out.println("数组长度为"+s.length());
        //例如//q w e r 长度 4  当i=3 s.charAT(3)=r;
             //0 1 2 3
        String s1="";//在这里创建一个空数组;
        for (int i = s.length()-1; i>=0; i--) {
            //charAt根据输入的索引输出元素;
            char s3=s.charAt(i);
            System.out.print(s3);
        }
    }
}

2.判断一个字符串是否对称

import java.util.Scanner;
/**
 2.判断一个字符串是否对称
 */
public class Demo2 {
    public static void main(String[] args) {
        Scanner s=new Scanner(System.in);
        System.out.println("输入字符串");
        String s1=s.next();
        Demo2.sfduichen(s1);
    }
    //写个判断方法;
    public static void sfduichen(String s){
        //设置一个判断标志;
        boolean res;
            for (int i = 0; i < s.length()/2; i++) {
                //在这里对字符串前后进行比较;
                if (s.charAt(i) == s.charAt(s.length() - 1)) {
                    System.out.println("字符串对称");
                    res=true;
                    return;
                }
            }
            //不对称
        res=false;
        System.out.println("不对称");
    }
}

3.写一个方法用于获取文件后缀名;方法有一个String类型的参数,用于接收文件名(例如:Hello.java),在方法中将文件后缀名截取出来,再定义一个String类型的返回值,用于将后缀名返回.

import java.util.Scanner;
/**
 3.写一个方法用于获取文件后缀名,
 方法有一个String类型的参数,
 用于接收文件名(例如:Hello.java),
 在方法中将文件后缀名截取出来,
 再定义一个String类型的返回值,用于将后缀名返回.

 */
public class Demo3 {
    public static void main(String[] args) {
        //在控制台输入
        Scanner s=new Scanner(System.in);
        System.out.println("输入文件名");
        String s1=s.next();
        Demo3.houzhuiming(s1);
    }
    //方法 ,返回值为String的;
    public static void houzhuiming(String s){
        //文件的后缀名前有.这个符号,那么获取位置后;
        //然后通过截取方法;
        System.out.print("文件的后缀名就是 ");
        //输出后缀名;注意不要截取到.这个符号;
        System.out.println(s.substring(s.lastIndexOf(".")+1));
    }
}

4.查找指定字符在字符串中出现的次数.

例如:qwerqwerqwerqwerqwer;查找w在字符串中出现的次数
/**
 4.查找指定字符在字符串中出现的次数.
 例如:qwerqwerqwerqwerqwer
 查找w在字符串中出现的次数
 */
public class Demo4 {
    public static void main(String[] args) {

        Demo4.chazahocishu("qwerqwerqwerqwerqwer",'w');
    }
    //定义一个查询次数的方法;
    //s1为字符串,s2为要查找的字符;
    public static void chazahocishu(String s1,char s2){
            int size=0;
            for (int i = 0; i < s1.length(); i++) {
                //每一个元素进行判断;统计出现的次数;
               if(s1.charAt(i)==s2)
                size++;
            }
            System.out.println(s2+"在字符串中出现的次数为"+size+"次");
    }
}


水仙花数

循环输出100-999之间的水仙花数.所谓"水仙花数"是指一个三位数
其各位数字立方和等于该数本身。例如:153是一个"水仙花数",
因为153=1的三次方+5的三次方+3的三次方。

public class Demo02 {
    public static void main(String[] args) {

        for (int i = 100; i <= 999; i++) {

            if((i)==((i%10)*(i%10)*(i%10)
                    +(i % 100 / 10)*(i % 100 / 10)*(i % 100 / 10)
                    +(i / 100)*(i / 100)*(i / 100))){
                System.out.println(i);
            }
        }
    }
}

/*
153
370
371
407
*/

输入一个整数,判断其是否为回文数
回文数:将其数字反向排列的数与其本身相同。

public class Demo01 {
    public static void main(String[] args) {
       int num=123321;
        System.out.println(test(num));
    }
    public static boolean test(int num){
        if(num<0||num!=0&&num%10==0){
            return false;
        }
        int nextNum=0;
        while (num>nextNum){
            nextNum=num%10+nextNum*10;
            num=num/10;
        }
        boolean f=(num==nextNum||num==nextNum/10);
        return f;
    }
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小智RE0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值