Java学习历程之----基础篇总结(十二)

      不应当急于求成,应当去熟悉自己的研究对象,锲而不舍,时间会成全一切。凡事开始最难,然而更难的是何以善终。

——莎士比亚

前 言

       这两个月以来,我们从最开始的如何安装Java语言的开发环境,然后一步一步从最基本的Java的基本数据类型、慢慢走到到运算符、流程控制语句、数组、数字和日期处理、字符串处理等内容。不知道大家两个月以来有没有感受到自己的成长变化,接下来我们就这两个月的学习做一个简单的总结回顾。主要是引领大家做一些题目练练手~      

 

                         

       

 

Java学习历程之----基础篇总结(十二)_第1张图片

一、先对数组{11,6,9,8,21,3,14,6,5,10,13}进行排序,然后用二分查找法找出数组元素中的10,标出其排序后下标的位置。

Java学习历程之----基础篇总结(十二)_第2张图片

1.1 运行结果及截图

Java学习历程之----基础篇总结(十二)_第3张图片

1.2 源码

package first.summary;
public class Problem1 {
    public static void main(String[] args){
        int numbers[] = {11,6,9,8,21,3,14,6,5,10,13};//也可以尝试自己输入一个数组
        java.util.Arrays.sort(numbers);
        System.out.println("排序后的数组为:");
        for(int i=0;ilow) {
            mid = (low + high) / 2;
            if (key < list[mid])
                high = mid - 1;
            else if (key > list[mid])
                low = mid + 1;
            else
                return mid;
        }
        return -1;//找不到返回-1
    }
}

       

Java学习历程之----基础篇总结(十二)_第4张图片

二、编写一个程序,从键盘输入两个子串并连接,然后将子串有大写字母的全部转为小写字母输出。

Java学习历程之----基础篇总结(十二)_第5张图片

2.1 运行结果及截图

Java学习历程之----基础篇总结(十二)_第6张图片

2.2  源码

package first.summary;
import java.util.Scanner;
public class Problem2 {
    public static void main(String[] args){
        System.out.println("请输入第一个字符串:");
        Scanner scan=new Scanner(System.in);
        String str1=scan.nextLine();
        System.out.println("请输入第二个字符串:");
        String str2=scan.nextLine();
        scan.close();
        String str3=str1+str2;
        System.out.println("连接后的字符串为:"+str3);
        String str =str3.toUpperCase();
        System.out.println("变换后的字符串为:"+str);
    }
}

        

Java学习历程之----基础篇总结(十二)_第7张图片

三、给定一个0~1000的整数,求分解后各位数的和并输出,例如345的结果是3+4+5=12。

Java学习历程之----基础篇总结(十二)_第8张图片

3.1 运行结果及截图

Java学习历程之----基础篇总结(十二)_第9张图片

3.2  源码 

package first.summary;
import java.util.Scanner;
public class Problem3 {
    public static void main(String[] args){
        System.out.print("请输入一个整数:");
        int i=new Scanner(System.in).nextInt();
        int sum=0;
        while(i%100!=0){
            sum+=i%10;
            i=i/10;
        }
        System.out.print("各位数的和为:"+sum);
    }
}

       

Java学习历程之----基础篇总结(十二)_第10张图片

四、编写程序,判断用户输入的数是否为绝对素数;绝对素数是指本身是素数且其逆序数也是素数。

Java学习历程之----基础篇总结(十二)_第11张图片

4.1 

Java学习历程之----基础篇总结(十二)_第12张图片

4.2 

package first.summary;
import java.util.Scanner;
public class Problem4 {
        public static void main( String args[] ) {
            Scanner sc = new Scanner(System.in);
            System.out.print("请输入一个数: " );
            int num=sc.nextInt();
            int inv = invert(num);
            if ( check(num)&&check(inv) )
            {
                System.out.print(""+num+" 是绝对素数" );
            }
            else if(check(num))
            {
                System.out.print(""+num+" 是素数" );
            }
            else
                System.out.print(""+num+"不是素数");
        }
        static boolean check( int num )//判断一个数是否为素数
        {
            for( int i=2;i<=num/2;i++ ){
                if ( num%i==0 )
                {
                    return false;
                }
            }
            return true ;
        }
    private static int invert(int n)  //求反序数
    {
        int x,y;
        x=n/10;
        y=n%10;
        int c;
        c=x;
        x=y;
        y=c;
        n=x*10+y;
        return n;
    }
}

Java学习历程之----基础篇总结(十二)_第13张图片

Java学习历程之----基础篇总结(十二)_第14张图片

小编有话说

      2019已接近尾声,回望这一年,你有什么收获?又成长了多少呢?小编希望我码的文字哪怕对你有那么一丁点帮助,我也很满足了~好了,过去的就让它过去,重要的是我们要重振旗鼓,迎接2020的到来,未来,还有很长的路要走~

      上周的练习题参考答案如下,大家有认真完成么?

Java学习历程之----基础篇总结(十二)_第15张图片

编辑:玥怡居士|审核:世外居士

往期回顾

Java学习历程之----基础篇(十一)

Java学习历程之----基础篇(十)

Java学习历程之----基础篇(九)

居士之家

IT进阶之旅

Java学习历程之----基础篇总结(十二)_第16张图片

嗨,你还在看吗?

你可能感兴趣的:(Java学习历程之----基础篇总结(十二))