java练习:打印 数字1、2、3、4的组合,不能以4开头,1和3不能相邻,且数字不能重复
public class Test6 {/*** 用1、2、3、4这四个数字,用java写一个main函数,打印出所有不同的排列,如:1234、1243等,* 要求:"4"不能在第一位,"1"与"3"不能相连。*/public static void main(String[] args) {// TODO Auto-generated method stub//正则表达式,代表不以4开头的字符串String regex1 = "^[^4].*$";//代表1和3相连的字符串String regex2 = ".*[1][3].*$";String regex3 = ".*[3][1].*$";//建立存储组合的字符StringBuilder sb = new StringBuilder("");String str = null;int count = 0;//统计个数for(int i = 1;i < 5;i++){for (int j = 1 ; j < 5; j++) {for(int k = 1; k < 5 ; k++){for(int h = 1 ; h < 5 ; h++){sb.append(i).append(j).append(k).append(h);str = sb.toString();if(str.matches(regex1))//不以4开头{if(!(str.matches(regex2)||str.matches(regex3))){//1和3不相连if(single(str)){ //过滤,只要数字不重复的组合count++;System.out.println(str+"..."+count);}}} sb.delete(0,sb.length());}}}}}private static boolean single(String str) { //去除相同数字// TODO Auto-generated method stubboolean flag = true;for(int i = 1;i < 5;i++){int count = 0;int offset = 0;while((offset = str.indexOf(String.valueOf(i),offset))!=-1){offset += 1;count++;if(count > 1){flag = false;break;}}}return flag;}}
运行结果
1234...1
1243...2
1423...3
1432...4
2143...5
2341...6
3214...7
3241...8
3412...9
3421...10
java练习:打印 数字1、2、3、4的组合,不能以4开头,1和3不能相邻,且数字不能重复相关推荐
- Java:打印出所有的“水仙花数“,所谓“水仙花数“是指一个三位数,其各位数字立方和等于该数本身。
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如: 153是一个"水仙花数",因为153= ...
- Java:用Java程序打印出所有的 “水仙花数 ”。
题目: 利用Java程序打印出所有的 "水仙花数 ".所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个 "水仙花数 ...
- java ee打印功能_Java EE 8的前5个新功能
java ee打印功能 备受期待的Java Enterprise Edition 8版本具有两个令人兴奋的新API(JSON绑定1.0和Java EE Security 1.0),并且对当前API进行 ...
- (Java) 实现打印菱形图案
Java 实现打印菱形图案 一.直接看效果图: 随便输入一个数字,然后会生成一个宽度为该数字的菱形: 二.首先先来看下,菱形的结构,由符号和空格组成,所以就用for循环来实现这样的效果,然后来看代码: ...
- Java 实例-打印图形
Java 实例 – 打印菱形 输出指定行数的菱形. package com.example.yan.java打印图形;public class Main {public static void mai ...
- Java控制台打印样式diy
java 控制台打印样式diy 目前只在idea测试 没有在cmd eclipse等其他地方测试. System.out.print("\033[ ( 这里填样式数字 )m"+ms ...
- 打印出所有的“水仙花数“,所谓“水仙花数“是指一个三位数,其各位数字立方和等于该数本身。
打印出所有的"水仙花数". 所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.(例如: 153是一个"水仙花数",因为153=1 ...
- Java如何打印异常的堆栈?
Java如何打印异常的堆栈? 参考文章: (1)Java如何打印异常的堆栈? (2)https://www.cnblogs.com/borter/p/9613546.html 备忘一下.
- 如何从Java中打印XML?
本文翻译自:How to pretty print XML from Java? I have a Java String that contains XML, with no line feeds ...
- java ee打印功能_Java EE:异步构造和功能
java ee打印功能 介绍 Java EE具有许多API和构造以支持异步执行. 从可伸缩性和性能的角度来看,这是至关重要的. 让我们假设2个模块相互交互. 当模块A (发送方)以同步方式向模块B ( ...
最新文章
- FastQC结果解读
- 【控制】《自动控制原理》胡寿松老师-第2章-控制系统的数学模型
- 简约之美Jodd-http--深入源码理解http协议
- python安装失败0x80070570_固态硬盘装win7出现错误代码0x80070570怎么办
- (十)boost库之多线程
- oracle 绑定变量模糊查询,求助-ACTIVE DG 异常shutdown
- 教你必备Excel表格技巧。
- datagrid 完整dom结构
- 阶梯英语2006年年终大会主持人发言稿
- fglrx 9.8与kernel 2.6.30
- A8下超级终端调试问题
- sql中什么时候应用临时表_SQL数据仓库环境中的临时表应用程序
- python装饰器详解-如何理解Python装饰器?
- Peasy.NET学习之并发问题处理
- 【Selenium2】【项目实战】
- LayerCAM:Exploring Hierarchical Class Activation Maps for Localization
- java之StringBuilder和关于数组怎么扩容
- java wed的工作流程
- 计算机中数据的格式化,分享一个电脑格式化数据恢复方法-数据恢复百科
- SAP BAPI_PRODORD_CREATE 参数带上销售订单号报 客户订单无CO对象 提示