以下是大家在学习Java SE 的时候经常遇到的逻辑思维题##

 // 运算s=a+aa+aaa+aaaa+aa...n个a的结果public static int getS(int x, int n){int fang = 1;int sum = 0;int sum1 = 0;for (int i = 1; i <= n; i++) {for (int j = 1; j <= i; j++) {fang = fang*10;sum = sum + x*fang/10;}sum1 = sum1 + sum;System.out.print(sum + " ");fang = 1;sum = 0;}return sum1;}// 计算水仙花数public static boolean isShuiXianHua(int n) {int i, y;int sum = 0;y = n;while(n!=0){i = n%10;//获取每位数字n = n / 10;sum = sum + i*i*i;}if (sum == y) {return true;}return false;}// 1 + 1/2 - 1/3 + 1/4 - 1/5 + ... 的前n项和public static double getQianNHe(int n){double sum = 0;double x = 0;for (int i = 1; i <= n; i++) {x = 1/(double)(i*2-1);if (i%2==1) { sum = sum + x;}else{sum = sum - x;}}return sum;}// 计算1!+2!+...+n!的和public static int getLeiJieCheng(int n){int sum = 0;int cheng = 1;for (int i = 1; i <= n; i++) {for (int j = 1; j <= i; j++) {cheng = cheng*j;}sum = sum + cheng;cheng = 1;}return sum;}// 判断一个年份是否为闰年public static boolean isLeaPYear(int year){if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {return true;}else{return false;}}// 输入一个日期如:2017-08,输出当前月份的天数private static int getSumDays(int year,int month,int day){int[] a= {0,31,29,31,30,31,30,31,31,30,31,30,31};// 闰年每月天数int[] b= {0,31,28,31,30,31,30,31,31,30,31,30,31};// 平年每月天数int sumDays = 0;for (int i = 0; i < month; i++) {if (isLearYear(year)) { // 判断是否闰年sumDays += a[i];}else{sumDays += b[i];}}return (sumDays + day);}// 获取一个随机生成自定义长度的字符串public static String getRandomString(int length){char[] ch = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};Random rand = new Random();StringBuffer buf = new StringBuffer();for (int i = 0; i < length; i++) {buf.append(ch[rand.nextInt(ch.length)]);}return buf.toString();}// 分解质因数public static void getNumber(int number){int a = 2;System.out.print(number + "=");while(number > a){if(number % a == 0){System.out.print(a + "*");number = number / a;}else{a++;}}System.out.print(a);}// 计算number中包含digit的个数public static int countdigit(int number, int digit){int index = 0;int count = 0;while(number != 0){//number不为0index = number % 10;number = number / 10;if (index == digit) {//如果当前位数为digitcount++;}}return count;}// 打印金字塔数字public static void printPyramid(int n){//确定要打印多少行for (int i = 1; i <= n; i++) {for (int j = 1; j <= n-i; j++) {System.out.print(" ");}for (int j = 1; j <= i; j++) {System.out.print(i + " ");}System.out.println();}}//ֱ插入排序算法public static void insertSort(int[] arr){for (int i = 1; i < arr.length; i++) {int m = i; while(m > 0 && arr[m] < arr[m - 1]){ int temp = arr[m];arr[m] = arr[m - 1];arr[m - 1] = temp;m--; }}}//冒泡排序public static void maopaoSort(int[] arr){for (int i = 1; i < arr.length; i++) {for (int j = 0; j < arr.length - i; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}//二分查找public static int binnarySearch(int[] arr, int x, int min, int max){if (min > max) {return 0;}int mid = (min + max) / 2;if (arr[mid] == x) {return mid;}else if (arr[mid] >= x) {return binnarySearch(arr, x, min, mid - 1);}else{return binnarySearch(arr, x, mid + 1, max);}}//打印杨辉三角public static void printYangHui(int n){int [][] iArray = new int[n][];for(int i=0;i<n;i++) {iArray[i] = new int[i+1];for(int j=0;j<=i;j++) {if(j==0 || j==i) {iArray[i][j]=1;System.out.print(iArray[i][j]+"    ");}else{iArray[i][j]=iArray[i-1][j]+iArray[i-1][j-1];System.out.print(iArray[i][j]+"    ");}}System.out.println();} }//逆序输出一个整数public static int[] niXu(int[] args){int[] a = new int[args.length];for (int i = 0, j = a.length-1; i < args.length && j >= 0; i++,j--) {a[j] = args[i];}return a;}// 将字符串变成数字(类似paseInt)public static int change(String str){int sum = 0;for (int i = 0; i < str.length(); i++) {sum = sum + (str.charAt(i) - 48);sum = sum * 10;}return sum/10;}// 逆序输出一个正整数public static int reverse(int number){int sum = 0;int index = 0;while(number != 0){index = number%10; sum = sum + index; sum = sum*10; number = number/10;}return sum/10;}// 判断number的各位数的立方之和是否等于自身public static boolean is(int number){int x = number;int sum = 0;int index = 0;while (x!=0) {index = x%10;x = x / 10;sum = sum + index*index*index;}if (number == sum) {return true;}else{return false;}}// 计算x的约数之和public static int factorsum(int x){int sum = 0;//除了本身之外的可以被整出的为其约数for (int i = 1; i <= x/2; i++) {if (x % i == 0) {sum = sum + i;}}return sum;}// 递归算法获取斐波那契数public static int getFib(int n) {if (n == 1 || n == 2) {return 1;}    return (getFib(n - 1) + getFib(n - 2));}// 获取斐波那契数public static int[] getFibArray(int n){int[] aa = new int[n];//计算斐波那契数for (int i = 0; i < aa.length; i++) {if (i == 0 || i == 1) {aa[i] = 1;}else{aa[i] = aa[i - 1] + aa[i - 2];}}for (int i = 0; i < aa.length; i++) {System.out.println(aa[i]);}return aa;}// 打印数字n围成的棱形public static void printLengXing(int n) {// TODO Auto-generated method stub// 打印上半部分for(int i = 1; i <= n; i++){if(i == 1){for (int j = 1; j <= n - i; j++) {System.out.print(" ");}System.out.println(n);}else{for (int j = 1; j <= n - i; j++) {System.out.print(" ");}System.out.print(n);for(int j = 1; j <= 2 * (i - 1) - 1; j++){System.out.print(" ");}System.out.println(n);}}// 打印下半部分for(int i = n - 1; i >= 1; i--){if(i == 1){for (int j = 1; j <= n - i; j++) {System.out.print(" ");}System.out.println(n);}else{for (int j = 1; j <= n - i; j++) {System.out.print(" ");}System.out.print(n);for(int j = 1; j <= 2 * (i - 1) - 1; j++){System.out.print(" ");}System.out.println(n);}}}// 判断一个整数有多少个不相等的数字public static int getSame(int x) {// TODO Auto-generated method stubHashSet<Integer> hs = new HashSet<Integer>();int index = 0;while (x != 0) {hs.add(x % 10);x = x / 10;}return hs.size();}//判断是否是回文数public static boolean isHuiWen(int x){String strX = x + "";for (int i = 0; i < strX.length(); i++) {if (strX.charAt(i) != strX.charAt(strX.length() - i - 1)) {return false;}}return true;}// 判断是否为素数public static boolean isPrime(int x) {// TODO Auto-generated method stubfor(int i = 2; i < x; i++){if(x % i == 0){return false;}}return true;}// 计算一个正整数的下标之和public static int getIndexSum(int x) {// TODO Auto-generated method stubint sum = 0;int index;while(x!=0){index = x % 10;x = x / 10;sum += index;}return sum;}

感谢您的阅读,欢迎参观我的个人网站:闲乐小站【www.xianlewang.cn】

Java SE 常见逻辑思维题相关推荐

  1. java集合到线程的考试_成都汇智动力-Java SE考试编程题总结

    原标题:成都汇智动力-Java SE考试编程题总结 线程和进程的区别: (1)进程是运行中的程序,拥有自己独立的内存空间和资源; (2)一个进程可以有一个或多个线程组成,且至少有一个线程称为主线程; ...

  2. Java SE 易错题

    一.初始JAVA 1.Java虚拟机就是一个虚拟的用于执行字节码文件的计算机.它是Java最核心的技术,是Java跨平台的基础. 2.一个Java源程序是由若干个类组成.如果源文件中有多个类时,则只能 ...

  3. java string常见操作题

    1. 每个基本类型封装类都有将string转换为基本数据类型的方法 对于非常大的数字请使用Long,代码如下 int age = Integer.parseInt("10");  ...

  4. java笔试常见填空题

    1.Hibernate 五个核心类接口___configuration__,sessionFactory_,session_,transaction__,query. 2.hibernate的三种状态 ...

  5. 2020 年 Java 面试常见 350 题

    最新面试题汇总,来啦! 关注下方公众号,回复"2020面试" 免费获取2020年最新面试题 一起进大厂,每日学干货 关注我,不迷路

  6. java se包括哪些_Java SE

    Java SE 常见问题解答 这一组 Java 平台标准版常见问题解答简要回答了有关该技术的常见问题.还包括到本网站中更详细信息的链接. 概述 Oracle Java SE Advanced Desk ...

  7. java 逻辑思维题 后续更新

    java 逻辑思维题 后续更新 1. 比如 输入一个 n=5 打印结果如下: 解题思想:1.通过奇偶数 判端拼写顺寻 2.用个变量 记录每行的个数 不等 直接写 * 代码: private stati ...

  8. Java Se相关测试题(偏线程、集合)含答案及详解

    Java Se相关测试题(偏线程.集合)(简答.编程)含答案及详解 一.选择.简答题 二.编程题 (编程答案有很多思路,实现方式不同,如果有不同见解可打在评论区或私信) 一.选择.简答题 1.publ ...

  9. Java学习路线,Java SE,EE,ME的区别,SSM框架基本概念

    1.尚硅谷 视频课程:https://www.bilibili.com/read/cv5216534 初学者可按照尚硅谷公开的JAVA视频最快学习路线: JavaSE --> MySQL–> ...

  10. 【JAVA SE】 JAVA基础强袭之路 数据类型及其转换和提升全面讲解(猛男细节+保底一个收藏)

    本章目录 温馨提示 开篇介绍( 说的多一点 耐心看完哦!) 本章重点 正文开始 1. 变量和类型 1.1 常量 1.2 变量 1.2.1 变量的作用域 1.2.2 变量的命名规则(阿里巴巴开发手册) ...

最新文章

  1. 瞄准自然语言处理,百度与鹏城实验室共建实验室
  2. BUCK/BOOST电路原理分析
  3. Attention Model(注意力模型)思想初探
  4. 再放QQ微博邀请码(2)
  5. 要出去找工作了,看看多线程和并行的区别及什么时候该用
  6. HBase rowkey概念
  7. 安卓模拟器运行python_利用python+Appium 之 如何在设备(模拟器)上自动安装并启动APP...
  8. HH SaaS电商系统的商品销售分区功能模块设计
  9. 想成领袖?先瞄准老板身边的位置
  10. java按年月季度统计折线图_拆线图按年、按月,按天统计,前端传时间只要起始时间与结束时间...
  11. qt下的跨目录多工程编译
  12. 2021-06-27函数定义与参数
  13. [转载]从KX、KR用户的购镜选择谈到K5和其他
  14. Linux共享后无权限访问,Samba服务无权限访问
  15. 系统创建定时执行任务bat批处理删除指定N天前文件夹的文件
  16. 文曲星猜数字游戏java_文曲星猜数字游戏
  17. “我和刘德华直到现在都没离婚”-喻可欣坚称与刘德华已结婚
  18. Cisco WSA配置
  19. C++一周学习总结(2021/05/03)
  20. html后台管理模板(源码)

热门文章

  1. 研发岗位OKR的设计与激励 - 管理角度(附部分岗位样例)
  2. 参数检验和非参数检验
  3. win10无法防问其他计算机没有权限,win10系统访问磁盘共享没有权限的解决方案...
  4. 使用鼠标右击Gite Bash Here 将本地文件上传到 GitHub
  5. 台式计算机怎么安装无线网卡,台式机无线网卡怎么用 台式机USB无线网卡安装使用教程...
  6. 解决Windows10 14393版本迅雷崩溃问题
  7. Golang可能会踩的58个坑之高级篇
  8. STM32旋转立方体
  9. php ajax data遍历,jquery,ajax_each遍历 ajax 如何倒序插入数据库,jquery,ajax - phpStudy
  10. Flask入门(三)~补充及虚拟环境